Tag Archives: Java

What I learned on my (Memorial Day) “vacation”

Last weekend, an unexpected turn of events (that involve our dog and a box of Bisquick) left me at home, while my family headed off for a planned weekend away with our friends.  The time alone gave me a lot of time to catch up on things, including shopping (which I usually detest), home improvement projects, and podcasts.  I thought I would share a little of what I learned over the weekend, things that might be relevant to people who would read this blog.

Podcasts

I caught up on a lot of podcasts while I was sanding and staining our windows. The irony of listening to Java Posse podcasts while doing "windows" even amused me.  But anyhow, I caught up on a bunch of those podcasts, including the recordings they did while at Java One.  The BOF and CommunityOne recordings were fun to listen to.  It always seems to catch Dick by surprise that people actually show up. I don't think that he realizes the impact that the Java Posse has on its listeners.  I've said this before, but it's worth repeating.  The podcast really does a great job of giving people an idea of the breadth of things that go on in the community.  I also listened to their Java SE 7 interview with Danny Coward. That was interesting and relevant for anyone who wants to know where Java is headed.  Between JavaFX and the proposals for Java SE 7, there are a lot of things to keep in mind.

After I had my Posse fix, I listened to Scott Hanselman's Hanselminutes,  on Microsoft Research's new language Spec #.  Spec# started as a fork of the C# compiler and added language extensions that support contracts.  I really like Scott Hanselman's podcast.  He covers a wide variety of topics, and in spite of his new job at Microsoft, he doesn't strike me as a Microsoft Fanboy.  Rather, he has a grounded view of things.  I appreciate that.  In anyone.

I then listened to "The Evolution of Yahoo" on Stanford's Entrepreneurial Thought Leaders podcast.  This was recorded in the same week as the Microsoft/Yahoo buyout talks collapsed, and was an interesting perspective on where Yahoo is going.  If you think that Yahoo turning down Microsoft's offer was a mistake, this may give some insight into why the Yahoo people thought that their stock was undervalued, and where the company is going.   

Somewhere around this time, during last weekend, Jay Wren twittered about Software Showtunes, and so I popped over to listen to that.  TOTALLY amusing.  Well worth the time. Microsoft takes a bit of a beating, but Apple doesn't come away completely unscathed either.

I think that I wrapped up the podcast/staining windows fest with IT Conversations "High Performance Computing Considered Harmful", which really provoked a lot of thought. The fact is that scientists and engineers write a lot of code.  Computer scientists often turn their noses up at the tools that they use, like Matlab, when in fact that tool serves them very well.  In fact, my husband uses Matlab for a lot of simulations, and one of our employees (Anne) has been working on the ProjectEuler problems using Matlab.  One of our consultants (Alex) thinks highly of it as well.  The truth is that this tool lets them get their jobs done.  What do we snooty computer scientists promote?  Parallel simulations?   Seriously?  Most CS grads can't write a decent multithreaded or parallelized app and we ask scientists and engineers to do this?  I loved it when the guest on the podcast said that if a scientist comes to him and says that he's run into a timing issue, then we should all realize that we're failing as computer scientists.  In fact, he estimates that only about 10% of scientists and engineers even use version control, yet so much time, effort, and research dollars go into speeding up simulations that will only be run a few times.  There are a lot of interesting things to consider about this.  I'm still thinking … I'm sure that many more blog posts will be generated from the ideas bubbling around in my head.

Buying Services

On the non-technical side, a learned a lot too.  More than just the fact that a dog needs to go to the vet if he eats a box of Bisquick and that much more gets done on home improvement projects when the kids are NOT home. 

What I learned was to take advantage of services that people provide.  As I tell my kids, we choose our professions based what WE do best in life.  For example,  I don't want the woman who cuts my hair writing software (and she doesn't want me cutting hair), which is why I pay her to cut it.  But more relevant to the software developer community (I'll affectionately brand us all as geeks for this rant), we need to recognize that there are services that we SHOULD be taking advantage of.  For me, that's shopping.  I HATE HATE HATE shopping. OK, I'm fine with buying software and hardware, but is that really shopping?  More explicitly, I hate clothes shopping.  I have discovered a service which I think that many of us in the geek community should embrace: the personal shopper.  It's free.  Some department stores (I used Lord & Taylor) pay them to help people like me, who are inept shoppers, choose items to buy.  Yes, they get a commission, but that's payment for their expertise (by their employer!).

Much like the scientists and engineers who don't use version control because they don't even know it exists, how do you discover that you could benefit from a service that you don't even really know about?  I had previously stumbled upon this service as I wandered aimlessly about, looking for a dress for an event that I had to attend.  I happened to run into the personal shopper who took me under her wing, escorted me to "her" dressing room, and brought armloads of dresses for me to try on.  She did a much better job of selecting a dress than I had done, and I returned the one that I had previously bought and purchased one that even COST LESS.

OK, there's a point here.  I'm trying to let you know the process so that you, friendly geek, are not intimidated by the process.

Here's a summary of my personal shopping experience from last weekend.

  1. Call department store and make appt with personal shopper for the next day. She asked a few questions, like what I was looking for. 
  2. Show up. 
  3. Clothes in my SIZE were hanging in the dressing room, for me to start trying on (ordered by color, type, etc).  I was a bit overwhelmed by where to start, but she walked me through it (start at the right and move left).  She brought me a bottle of water and retrieved other selections along the way (different sizes, etc.).
  4. Try on clothes.
  5. Personal shopper helps decide what does/doesn't look good.
  6. Fork over the credit card.  Personal shopper even applied a coupon (I didn't need to have one with me).
  7. I left with a nice selection of clothes that GO TOGETHER and are updated for 2008. 

That's my kind of shopping.  I wouldn't usually expose my personal weakness (my complete lack of shopping abilities), but I figured that this was a public service.  I've seen how people dress in our profession.  We need to consider this as a cost of doing business. 

I don't know when I'll get another "vacation" like this.  I promise not to poison the dog as an excuse to get one, but he's fine and I learned a lot (and my husband and kids had a great time with our friends too).  Doesn't get much better than that. 

Scala talk at AAJUG on Tuesday, March 26

I will be doing an introduction to Scala at the Ann Arbor Java User Group meeting on Tuesday, March 26.  The AAJUG wordpress site is broken, but hopefully people will know about the talk and attend anyhow.

Here's my abstract:

Scala is a multi paradigm language, offering both object-oriented and functional programming that runs on the Java Virtual Machine. The proliferation of multi-core machines is driving interest in functional languages, as they offer a simplified approach toward concurrency. This talk discusses why you should care about Scala as an emerging language, describes unique features of the language, and uses programming examples to demonstrate its use.

AAJUG meetings are held at Washtenaw Community College, Room BE 260, starting at 6:30 pm.
 

Android in Crested Butte …

Last year, at the Java Posse Roundup in Crested Butte, a few of us got together the day before the conference for a pre-event.  We talked about Django and TurboGears. It was quite interesting, and people filtered in throughout the evening, as they arrived in town.  So I figured we needed something similar this year and had been sort of thinking about what might be a good topic, but hadn't really given it much thought until TODAY, when one of the attendees (waving at Mike Levin in the Swamp) mentioned that he and Robert Cooper had been talking about Android quite a bit and were looking forward to seeing what they could do with it.  No sense them having all of the fun, all by themselves.

So, for this year's Roundup (March 4-7), a few of us are going to get together the day before the conference starts to see what we can do with Android.   Should be fun.  I already have all of the development tools on my laptop, from CodeMash. I'm looking forward to it, and several of the attendees have already emailed me saying that they are as well!   Fun!

 
 

Rod Johnson/Spring at the Central Ohio Java User Group on January 24

Our friends in Columbus, OH will host Rod Johnson on Thursday, January 24, from 6-8 pm. Rod is the creator of Spring and a hero to many in the J2EE community for giving them an alternative to EJBs.  Rod will discuss new features in Spring 2.5.  If you're ANYWHERE near Columbus, I think it's worth stopping by.  I'm disappointed that I won't be able to make it!  I would definitely venture deep into Buckeye territory for that talk.

Rich Internet Application Jam: Silverlight and Flex

Last week, James Ward (Adobe), Josh Holmes (Microsoft), and Bruce Eckel (well, Bruce Eckel!) conducted a Rich Internet Application Jam at our office. This was NOT a competitive event.  Rather, in the spirit of CodeMash, people came together to learn about competing technologies in a cooperative manner.  Each attendee decided which technologies to explore, and how much time to spend on them.  Most of the attendees were interested in Flex, but Silverlight was represented as well.  And of course, the Jam included discussions of the strengths of each.  It appears that Flex has strong support for controls, yet to be provided in Silverlight.  Silverlight shines in its support of vector graphics, which Flex doesn't currently provide.

I spent some time looking at the AdvancedDataGrid in Flex 3.  One of the attendees had a customer requirement for a lot of grid data, including summaries and rollups.  The advanced data grid supported what he needed to do, using a combination of summary rows and groupings.  On the summary rows, he was able to choose one of five functions that are baked into the advanced data grid: min, max, average, count, and sum.  Nice!  If you're interested in this, note that the documentation is apparently not available in the Flex 3 docs that are downloaded, but is available online.  Sreenivas Ramaswamy's blog has a nice writeup about this control (and others!).

Andy Beaulieu's site has a cool Silverlight demo.  If you enter an address for which there is Virtual Earth data, you can play a game that allows you to destroy UFO's while flying over that address.  Impressive!

Once again, I was impressed by the Jam format.  With Bruce, James, and Josh to help people over any rough spots, attendees were able to work on exercises that interested them, and spend as much time as they needed on any particular task.  I like this better than the typical situation where a class is in lock step for exercises, and individual attendees are either sitting around waiting for someone to finish, or frantically trying to rush through so that everyone else can move on.  And these people were able to focus on using the technology in a way that is meaningful for their purposes, but have the support of an expert right there.

The attendees seemed to enjoy themselves and learn a lot.  I can't wait til our next Jam: it's a C# Jam with Bill Wagner, Jamie King, and Bruce Eckel.  It will be held at our office April 8-11.  Bruce and Jamie are working on a C# book, and Bill's working on his 3rd C# book.  This Jam will focus on C# 3.0 and its new language features.   The early bird deadline for that event is January 31.

 

Day 1 of the RIA Jam … and RIA at Special User Group meeting tomorrow

Today was the first day for the Rich Internet Application Jam, being held at SRT Solutions' offices.  James Ward (Adobe)  and Bruce Eckel are here, working side-by-side with people who are in various stages of learning Flex and Josh Holmes (Microsoft) is here representing Silverlight and working with people interested in that.  The Jam goes through Wednesday.

Tomorrow night (Tuesday January 15), James and Bruce will present a talk, "Connecting Java with Flex using Open Source Blaze".  The discussion will include how Blaze differs from LiveCycle Data Services and perhaps even a little bit of Scala.  You see, James spent some time this past weekend connecting Flex to Scala.  Interesting.

This is a special joint meeting of the Ann Arbor Computer Society and Ann Arbor Java User Group, and will be held at 206 S. Fifth Ave, Suite 200, Ann Arbor, MI 48104.  The meeting starts at 6 pm, and is free and open to the public.  AACS is providing pizza. 

Python Underground, Scala, and Blaze: oh my!

We have several free events coming up at SRT.

On Thursday, January 3, at 7 pm is the monthly Michigan Python User Group meeting.  Discussions will likely center around a project called Python Underground and I've heard rumors of a discussion of the Rails is a Ghetto blog post by Zed Shaw.

This Friday, January 4, we will hold lightning talks from 3-5.  Anyone is welcome to attend (and speak for 10 minute segments).  I'll be doing a talk on Scala, a preview of a section of my upcoming CodeMash talk. 

On Tuesday, January 15, James Ward (from Adobe) and Bruce Eckel (Java guru) will present "Connecting Java with Flex using Open Source Blaze" for a joint meeting of the Ann Arbor Computer Society/Ann Arbor Java User Group

And, some for-fee events in the area as well:

CodeMash is, of course, Jan 10-11 (and the evening of the 9th) in Sandusky, OH at the Kalahari Resort and Indoor Water Park.  If you are planning to attend, register SOON at $175 for the 2.5 days to avoid the procrastinator fee (of $250).

And the Rich Internet Application Jam will be held at SRT's offices, from January 14-16.  Early bird registration goes through January 4, so register before then to save $100 from the $500 fee.  Note: the registration fee includes a copy of FlexBuilder.
 

 

Matrin Odersky interview on Scala on the Java Posse

I was just loading up my iPod for my Friday night workout and I was hoping for a new Java Posse podcast.  I'm in the habit of listening to podcasts rather than music while working out.  The time goes quickly and I learn something.  The only downside is that it's not good at ALL for taking notes.  But come on, who takes notes with podcasts anyhow?

So what do I see, but a new episode AND it happens to be an interview with Martin Odersky about Scala!  COOL! 

 So, in the final weeks before my Scala talk at CodeMash, I'm thrilled to see a Scala eBook released and to have this interview come out as well.  Good timing for me.

 Anyhow, so off I go to the basement where we have a Smooth Fitness elliptical.  Having something like this at home is essential, IMO, for parents.  Kids are in bed.  Husband is out finishing up the Christmas shopping (good man!).  If not for the elliptical, I would be in front of the TV … or the computer (oops, wasn't I going?).