Category Archives: Technology

Technology events in Ann Arbor this week and next …

Even though it's summertime, there are still a lot of meetings in Ann Arbor this week, and next.   

On Wednesday, July 2, Chris Sellers will be talking about Amazon EC2 at the Ann Arbor Computer Society meeting.  That meeting will be held at SRT Solutions, 206 S. Fifth Ave, Suite 200, Ann Arbor, MI.  The meeting starts at 6 pm and is free and open to the public.  AACS supplies pizza for all.  Supporting members ($20/year annual dues) qualify for door prizes.

On Thursday, July 3, the Michigan Python User Group will meet, also at SRT Solutions.  Kevin Dangoor will talk about ZODB, the Python Zope Object Database. MichiPUG meetings are free and open to all.

The following week, on Wednesday, July 9, the Ann Arbor Dot Net Developer Group will host Jonathan Zuck, from ACT Online.  Jonathan is a software developer turned lobbyist.  His cause is innovation, and his company ensures that our elected officials are informed about technology matters.  Jonathan's making the user group rounds, visiting Ann Arbor, Lansing, and Grand Rapids .NET user groups with his message about why we, as technologists, need lobbyists.  DotNetRocks listeners may be familiar with Zuck, since he's made several appearances on that podcast, including his most recent visit to discuss OOXML.  AADND meetings are also held at SRT Solutions and are also free and open to all.

If you want to participate in a developer-oriented charity event, check out Ann Arbor Give Camp, July 11-13 at Washtenaw Community College.  

Just outside of the Ann Arbor area, is the Michigan!/usr/group at the Farmington Hills Library.  The topic of their meeting on July 9 is "MythTV".

Oh, and if you were wondering about SRT lightning talks for this week, we've cancelled them because Friday IS the Fourth.  The next scheduled lightning talks are on July 18, which happen to be Art Fair week.  Hmm, we may need to rethink that date.  It seems unlikely that even the half million or so visitors to the art fairs will draw much foot traffic for technical topics!  

Amazon EC2 topic for AACS meeting in July

Late breaking news … once again the deep network of Ann Arbor Computer Society members has come through with an interesting talk.

The AACS program chair (Jay Wren) has just let me know that Chris Sellers will speak on Amazon EC2 at the AACS meeting on Wednesday, July 2.  The meeting will start at 6 pm, and as always, is free and open to everyone.   AACS meets at SRT Solutions, 206 S. Fifth Ave, Suite 200, Ann Arbor, MI 48104.

Amazon EC2 (Elastic Compute Cloud) is a web service that allows you to run your application on Amazon's servers, where you pay for the capacity of the computing resources that you use.

I'll post an abstract as soon as I receive it, or watch http://www.computersociety.org for details.

Events this week in Ann Arbor and Lansing

Thursday night, June 19, SRT's very own Darrell Hawley will be speaking on IronPython at the Greater Lansing Area .NET User Group.  If you read his blog, you will know that he's been working hard on this talk, refining the content as well as his speaking technique.  That's not to say that it was bad before (it wasn't).  I think it shows how much emphasis people are putting on delivering high quality talks these days.

On Friday, June 20, SRT will hold lightning talks, which are free and open to all for speaking and/or listening.  We love it when people come to speak from other companies because we enjoy learning about what others are doing.  The 5 minute talks are a great way to get your confidence up, if you're not a regular speaker, and a great way to distill a topic into its essential components if you are.  There's usually something for everyone. I always compare lightning talks to the "short films" at the Ann Arbor Film Festival. If the film (or talk) isn't of interest to you, you haven't made a big investment and another film (or talk) that may be more to your liking will soon follow.  Lightning talks will start at 3:30 and go until about 5.  If you can't get there right at 3:30, no worries. Show up when you can.  We're a casual bunch.

Saturday, June 21, is the Lansing Area Day of .NET.  You have probably heard about these free 1-day immersions into .NET technology.  The first one was in Ann Arbor a few years ago.  The events usually sell out quickly, so register soon if you would like to attend.

And I wanted to add a quick reminder in case you missed my blog earlier this week about Startup Weekend Ann Arbor, that's going on this weekend as well!

Women in Technology Blog Series by Jennifer Marsman

Jennifer Marsman, developer evangelist at Microsoft, is in the process of producing a series of blogs about women in technology.  Motivated by the unsettling experience of realizing that blogs.msdn.com/jennifer was still available in 2007, Jenn seeks out women to interview for her blog, telling their stories.  In addition to being an accomplished developer herself, Jenn has a great knack for making the stories relevant and interesting.

This week, I'm honored to be the "woman" that she chose to interview. I'm thrilled to be in good company with such women as Lidiane Souza, Amity Blinkert, Karen Djoury, Carey Payette, Janet Galore, Toi B. Wright, and Katy Kneale. I look forward to reading Jenn's Women in Technology blog each Friday, and I know that there are some interesting interviews to come.  I hope that all of you will send your suggestions to Jenn as well.  It's a great series and I've learned a lot from reading about these women and their accomplishments.  I'm sure that Jennifer will easily fill up the year (and then some) with a new woman to profile each week.  I'm looking forward to the continuing series!

Startup Weekend Ann Arbor … and RIA Tools Tutorial

On Tuesday, June 17, Microsoft is presenting a free one day RIA Tools Tutorial day at SRT Solutions.  Spend the day with Microsoft developer evangelist Jennifer Marsman and RIA evangelist Josh Holmes to learn how to effectively use Visual Studio and Expression Suite to build Silverlight applications.  The event will be heavily hands-on, and space is limited to 15 participants. Register soon.

Next weekend, Ann Arbor is hosting a Startup Weekend. These have been held all over the country and now it's our turn!  Here's a quick blurb about what that means, from startupweekend.com:

Startup Weekend is a intense 54 hour event bringing together brilliant tech minds (developers, designers, marketers, ect.) together to create a company (or as many as the community wants) from concept to launch!

The event will start on Friday June 20 at 6 pm, when teams will be chosen.  By Sunday June 22,  COMPANIES will be launched.  On June 23, some people may begin hiring to move foward if they're ready. Others will probably wait.  SPARK is offering its "Starting your own Business" program to startup weekend participants, for free.  

If you want to attend Startup weekend, sign up soon!

 

Tail recursion in Scala and Annotations for Software Defect Detection

The Java Posse interview with Brian Goetz and Bill Pugh cleared up how Scala supports tail recursion in spite of the JVM's lack of support.  Brian Goetz did a great job of explaining that currently compiler writers have to build in the support (which Scala does) because the language doesn't support it directly.  He went on to explain that while there is support in the CLR for tail recursion, the F# compiler writers chose not to use it in some cases because they found that they could write a more optimal version by converting to iteration.  

The conversation was about changes that can be expected in Java 7, including JSR 292 ("Enhancements for Other Languages", aka "Invoke Dynamic"), JSR 305 (Annotations for Software Defect Detection), and JSR 308 (Annotations on Java Types).  

The discussion of JSR 305 (and @NonNull) reminded me of the discussion of contracts in a podcast on Microsoft Spec# that I listened to a few weeks ago. Scott Hanselman did an accompanying blog post as well. The FindBugs (static analysis) tool that Bill Pugh did is definitely a "must-have", and can already support annotions such as described above.  The JSR would simply provide a naming convention so that all tool makers and programmers could agree.  I had to look up Bill's annotation to see if it was "NotNull" or "NonNull", for example!

Note: JSRs (Java Specification Requests) are formal requests through the JCP (Java Community Process) for changes or enhancements to Java and the Java Virtual Machine.  This is an open process and participation is encouraged. 

  

Tech events in Ann Arbor this week

It's the first week of the month again … so there are user group meetings galore.

Wednesday, June 4 at 6:00 pm is the Ann Arbor Computer Society meeting.  The topic is PostgreSQL 8.3 and Beyond.  PostgreSQL is a free and open source database.   The meeting will be held at SRT Solutions, 206 S. Fifth Ave, Suite 200, Ann Arbor, MI.  AACS meetings are free and open to the public.  Supporting memberships of $20/year are available, which help to support the pizza and soft drinks served at meetings as well as the door prizes.  

On Thursday, June 5, the Michigan Python User Group will meet at SRT Solutions at 7:00 pm.  The topic is TBD but some ideas that have been thrown around include: Google App Engine, non-relational databases, and Jython.  I'm sure it will be an enjoyable meeting, as always.  It's a great group, very casual and welcoming (and the meeting is free).  Please join us.

And Friday is the "on" Friday for Lightning Talks at SRT. Head over to SRT at around 3:30 pm for 5 minute talks on any tech topic of your choosing.  We'll go until about 5 so stop by whenever you are free on Friday afternoon.  SRT's lightning talks are free and open to everyone in the community, both for speaking and listening.  We think that the entire community benefits when we all know what others are doing.

Android to be 100% open-sourced

I read an interesting blog post on Ed Burnette's Dev Connection this morning.  Google says that Android (the libraries, the core platform components) will be open-sourced 100%.  Ed talked to several Google employees last week at the Google I/O conference in San Francisco.  You can read Ed's entire article at his blog (linked above).

I think that an open sourced Android is great news, not only for the Android community but for the Java community as a whole.  Android is Google's flavor of Java, customized for what developers really need on a phone.  So, my understanding is that it's a subset that has some other essentials added in.  It doesn't run on the Java VM, but rather its own virtual machine: Dalvik

JavaFX Mobile, on the other hand, is Sun's revamped platform for mobile devices. JavaFX Mobile runs on the Java VM, not Dalvik.  It will be interesting to see if any of the work that Google has done on the mobile platform will make its way into JavaFX Mobile.  Already, the communities are working together. In fact, at JavaOne a few weeks ago, a JavaFX Mobile app was demonstrated on Android.  Nice!

 

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. 

Next week in Ann Arbor …

The Ann Arbor Java User Group meeting, usually held on the 4th Tuesday, will NOT be held on Tuesday, May 27. Looking forward to the next meeting, on Tuesday, June

The Agile Coach Camp is being held, however.  It's from Friday, May 30 through Sunday June 1.  It looks like an interesting event.  I even have a friend coming in from Europe (waving at Niclas) for the conference.  Go to http://agilecoachcamp.org/  and http://wiki.agilecoachcamp.org/tiki-index.php?page=InvitationLetter for more information.