Tag Archives: AAJUG

Ann Arbor Java User Group meeting tonight

Just got the word that I totally missed that there is an AAJUG meeting tonight.   Kirsten Henderson from iDashboards is speaking on:

JSR 223: Scripting for the Java Platform

Date: Tuesday, November 6th, 2007
Time: 7:00PM – 9:00PM EDT

Open Networking starts at 7 PM.

We will have giveaways such as T-Shirts, Pens, etc. as well as a raffle for a free license of JetBrains IntelliJ IDEA Version 7.0.

Meeting Location:
Washtenaw Community College, WCC BE250
www.wccnet.org/search/roomlocator/

PRESENTATION:
===========

JSR 223: Scripting for the Java Platform: The Java Scripting API (JSR-223) consists of a script language independent framework that provides developers with the power to leverage the strengths of a scripting language (JavaScript, Ruby, Python, etc.) from within their Java applications. This presentation will focus on demonstrating how the Java Scripting API empowers Java developers to choose the best tool for a given task rather than having to work within the confines of a given language. Emphasis will be placed on the interface itself and the usage of third-party scripting engines to execute scripts rather than the intricacies of implementing a scripting engine.

Speaker BIO:
=============

Kirsten Henderson is a Software Developer on iDashboards, a Business Intelligence enterprise dashboard application.

September Ann Arbor Tech Events

Ah, a new month and more tech events in Ann Arbor. All meetings are free and open to the public.  SRT is happy to say that we will be hosting several of these meetings in our new office, at 206 S. Fifth, Suite 200.  That's at the corner of Fifth and Washington, directly above the Linux Box.  Entrance is on Fifth; take the elevator to floor 2R (or you can take the stairs, but then you have to wind around on the 2nd floor to find our office).

Tomorrow, Wednesday September 5, Dave Strenski of Cray Inc., will be presenting a talk for the Ann Arbor Computer Society, entitled "Estimating FPGA 64-bit Floating Point Performance".  For a brief summary on FPGA (Field Gate Programmable Arrays), go to http://en.wikipedia.org/wiki/FPGA.  Dave will talk about the architecture of the Xilinx Virtec-4 and Virtex-5 FPGA chips, and demonstrate how to estimate their performance.  This meeting will be held at SPARK Central, 330 E. Liberty (lower level) for the last time.  Starting in October, SRT will be hosting the AACS meetings.

On Thursday, September 6, the Michigan Python User Group will talk about "Python 3.0: What's up with that?".  The group will meet at SRT's offices, at 206 S. Fifth Ave, Suite 200 (see directions above).

On Monday, September 10, at UM's North Campus (EECS 1200), the Ruby MI group will meet.  In addition to open discussion, the meeting will include:

  1. User Group Challenge – Boggle
  2. Ruby/Rails Editors lightening talks
  3. RubyConf*MI

 
The Ann Arbor Java User group, which usually meets the first Tuesday of the month, has moved its meeting to next Tuesday,September 11, because of the holiday.  Raj Rajen will be presenting Janeeva's experiences with Flex.  The AAJUG meeting will be held at its longtime location at Washtenaw Community College, Room WCC BE250

And finally, the Ann Arbor Dot Net Developer Group (AADND) meets on Wednesday, September 12 for a talk on Windows Workflow (WF) and "Following the Rules", by Michael Wood. AADND will also be meeting at SRT's office, at 206 S. Fifth Ave, Suite 200 (see directions above).

Ann Arbor, Google, and Recruiting

Last night, Google presented the second of two talks, this one for the Ann Arbor Java User Group. The topic of the Java talk was "End-to-End Clustering" and it was presented by Ashok Banerjee, a Noogler  (he's only been with Google for a month or so).  He is an Engineering manager who used to work for BEA on the WebLogic team.  Ashok did a great talk on how to balance load and make software fault tolerant and highly available. He has an easy speaking style, and I really liked how he kept the audience involved, periodically checking to see if people understood, reminding them that if they shook their heads up and down (yes), their neighbors would see, but if they shook them side-to-side (no), only he would see, and he would further explain the topic.  This led to a nicely interactive discussion with points clearly stated.  There was some active audience participation as well, which is always great to see.

Ashok promised to share his slides from the talk, and once those become available, I'll link to them.

As with Thursday's talk on Test Driven Development, this talk was held at the Google Ann Arbor office. I had really pushed to have the meeting at the Google office, as had Susan Loh, who was coordinating the event.  Not only did having it there make things easier for her to organize, but it also exposed the company a bit more to the local developers. I, personally, hadn't had an opportunity to get up to the Google office, and I suspect others were in the same situation.  It's interesting to have a view into Google culture (it made me smile to see 2 high chairs in the cafe, and I can only surmise that a few Googlers bring in their small children once in a while for lunch).

Google really wanted this to be a tech talk, not a recruiting push, and Susan was fairly low key in her recruiting efforts, mainly just leaving some cards on a table and telling people that they were there. But I had an opportunity to talk to her in detail about Google and the way that the company does hiring and I thought that that information might be of general use.  I hope that I will accurately portray this, and I hope that someone corrects me if I don't.

  • Google doesn't hire based on experience.  They are really interested in getting good minds. 
  • Google also doesn't hire for particular jobs.  That is, when you apply at Google, you indicate preferences for a team that you might want to work on, but the company decides if they want to hire you first, and THEN determines what you will be doing.  I both like and hate that .  I like it because I think it's really cool that Google emphasizing hiring the right people.  I hate it because I see interviewing as a two-way street, and not knowing what position you're hired for seems like it makes that part of the process quite one-sided.  I would like to see that explored a bit.
  • Google has recently stopped emphasizing location when they hire.  It's easy to see how they have perhaps saturated the market in the Bay Area, and have to look outside that area.  They have engineering offices in Phoenix, Chicago, Boston, Boulder, Atlanta, Seattle, New York, and Pittsburgh.  They have sales offices in nearly every large city, including both Ann Arbor and Detroit.  There has been a lot of speculation that they might open an engineering office in Ann Arbor.  My conversation with Susan Loh last night did nothing to dissuade me from thinking that was possible, but over the past week, I did get a slightly different impression about how that might actually happen.

Originally, I had thought that at some point in the future, there would be a huge announcement that Google was opening an engineering office in Ann Arbor, and that the governor would throw a big party, SPARK would get all excited, the Ann Arbor News would notice, and then the hiring would begin.  But, I don't think that's how it's going to happen.  I mentioned previously my thoughts that Google is testing the waters a bit, trying to see who's here, to determine if a pool of developers is available to support such an endeavor. I still think that is basically true, and that these tech talks were a perfect way to start that. But, what I had missed was the location transparency that Google is now employing in its hiring. Basically, if Google is hiring irrespective of where someone might actually sit, then it's fairly easy to bring employees into an existing sales office.

That means that there's the potential that Google MIGHT be interested, even now, in hiring software engineers for the Google Ann Arbor office.

Susan mentioned that she was impressed with the local community and its response to these events (60+ people for each of the 2 nights), and with the number of user groups and other organizations that are active in the area.  The audience was lively, interested, and engaged in the presentations. I know that's what they want to see.  However, several people at Google (both in person and on podcasts) have mentioned that cold, hard data is the best way to make things happen.  If Susan, Ashok, and Russell go back and say we seem interested in having an engineering office here, that's one thing, but a nice array of resumes piling up on Susan's desk provides that data that Googlers like to see.  So, if you want to let Google know that you're here, send Susan your resume.  You can send it to her at sloh AT google DOT com.  Susan didn't do a strong recruiting pitch, but I'll do one for her, and for Ann Arbor. Let Google know that Ann Arbor is chocked full of technical talent. It's in all of our best interests.
 

Google Tech Talk for Ann Arbor Java User Group on Tuesday, August 7

Registration is now open for the 2nd Google Tech Talk in Ann Arbor. If you missed out on registering for the Python User Group/AACS Tech Talk, then register early for this one.
Google Ann Arbor is excited to host a special tech talk event in tandem with the Ann Arbor Java User Group. Join us for food, drinks, and a technical talk with Ashok Banerjee, Engineering Manager at Google.

When:
Tuesday, August 7, 2007
6:00 - 9:00 PM

Where:
Google Ann Arbor
201 S. Division St., Fl. 5
Ann Arbor, MI

About the talk:
End to End Clustering

Ashok will discuss enterprise-level clustering solutions for
production systems. He will explain how at each level one can avoid a single point of failure. He will explore the mechanics, tips and traps, and ramifications for performance and throughput at each level.

He will discuss clustering at the following tiers: Global Load
Balancing, Site Level Load, Balancing, Web Server Plugins, SSL Accelerators, J2EE™ Application Clustering, Caching
HA Database, SAN/Veritas Volume Manager.

He will also focus on some protocols like HTTP, HTTPS, RMI, Protocol Tunneling etc.

About the speaker:
Ashok Banerjee, Engineering Manager at Google, works on the Google Billing Server. Prior to Google, Ashok designed and implemented Clustering (Load Balancing and Failover) on the Oracle Application Server and worked on the internals of the WebLogic Server. His interests include distributed computing, distributed transactions,
high performance messaging and persistence.

NOTE: Seating is limited, so registration is required for this FREE event.

http://services.google.com/events/annarbor_techtalk07_2 

AACS/MichiPUG Google Tech Talk Full!

Registration is now closed

Google closed registration for the joint meeting of the AACS and MichiPUG after registrations maxed out around 90.  We're going to have a full house for Russell Whitaker's talk on Python Test Driven Development.  I'm thrilled at the turnout and I sincerely hope that this means that the Google Ann Arbor office will host many more tech talks.  I think that we've shown that we're interested!

If you didn't get registered, don't despair.  Google is bringing in a speaker on the following Tuesday, August 7 for the Ann Arbor Java User Group meeting.  Once that registration link is released, I'll post it here (even if I don't have confirmation on the speaker yet).  Watch the AAJUG website as well: http://www.aajug.org.

Ann Arbor Computer Socieity

Michigan Python Users Group

Ann Arbor Java Users Group

Google Tech Talks in Ann Arbor

Details still coming

Google has announced 2 different Tech Talks to be held in the Ann Arbor area in the next few weeks.  Both meetings will be held at the Google offices in Ann Arbor and registration is required because seating is limited, but both events will be free and open to the public.  Google is sending swag, providing (heavy) appetizers, beer, wine, and it even sounds like dessert!

The first tech talk is in coordination with the Ann Arbor Computer Society and Michigan Python User Group, and will be held on Thursday August 2 at 6 pm.  Registration for that event is at:

http://services.google.com/events/annarbor_techtalk07

The second tech talk will be in coordination with the Ann Arbor Java User Group, and will be held on Tuesday, August 7. I don't know what time that will start, but I suspect at 6 as well.  As far as I know, a registration link is not yet available.

We're waiting on the Google folls to tell us who they are sending and what the topics will be.  I'm sure that both will be great events, and I'll post here as soon as we hear!

And a P.S. on "heavy appetizers".  Is this a new term?  Should I know what this means? I went to a wedding reception last week, and called my friend to see if they were having dinner, appetizers, or what.  He said "heavy appetizers" and that if we didn't eat beforehand, we certainly wouldn't go hungry. And he was right.  I laughed, though, because the Google folk described sending "heavy appetizers" as well.  I figure I'm just not in the know.

Ann Arbor Computer Society

Michigan Python User Group

Ann Arbor Java User Group

July events in Ann Arbor

Some on schedule, some on holiday delay

First, who IS meeting.  Then, who ISN'T.

The Michigan Python User Group is forging ahead with a meeting this week.  On Thursday, July 5, MichiPUG will meet at Arbor Networks, where Mark Ramm will talk about what to look for in TurboGears 2.0 (unreleased and in progress).  Hint: there was a sprint that involved Pylons a few weeks ago in Atlanta, and Mark was involved.  The meeting starts at 7:00.  Arbor Networks is at 220 E. Huron in the City Center Building in Ann Arbor (6th floor).

Now, who ISN'T meeting this week:

The Ann Arbor Java User Group meeting, usually held the first Tuesday, has been postponed so that everyone can head out to the fireworks tonight.  I hear that there will be some in Dexter!  I think that there will be an AAJUG meeting next Tuesday (10th); will advise when I get word.

The Ann Arbor Computer Society is also on holiday delay.  They will be holding a joint meeting with the Ann Arbor Dot Net Developers Group (AADND) on Wednesday, July 11, at the Ann Arbor SPARK (330 E. Liberty, lower level).  It will be an interesting talk, I think.  Bill Wagner (yes, my business partner) is talking on Generics, and what you can do with them in addition to using them in collections.  The meeting starts at 6 pm!

And, a SAVE THE DATE notice.

In August, AACS and MichiPUG will have a joint meeting on Thursday, August 2 at 6 pm at the Google offices in Ann Arbor.  Google is sponsoring a Tech Talk.  Seating will be limited,, so registration will be required.  Registration will open on 7/13.  Stay tuned, but definitely save the date!

It’s a busy week in Ann Arbor!

I’m still trying to finish up my blog from my visit to Microsoft last week (and from the Michigan Celebration of Women in Computing over the weekend), but I wanted to make sure that I mentioned the busy week that we’re having in Ann Arbor this week.

James Ward, Flex evangelist from Adobe, is coming in from Oklahoma City to present Flex both Tuesday night at the Ann Arbor Java User Group (www.aajug.org), at 7:00 (note the earlier time!), and on Wednesday night at the Ann Arbor Computer Society (www.computersociety.org) at 6:00 pm. While James has sent me the same abstract for both nights, he’s said that the Tuesday night event will be more Java-focused and the Wednesday night event will be more about the technology. There’s not much overlap in attendance at the groups but since I’m planning to attend both nights, it will be great to hear something different the second night.

Here’s the abstract:

Sexy Web Apps with Java, Mozilla Tamarin, and Flex

In this session James Ward will do live demonstrations and write code to show how easy it is to build sexy web apps with Java, Mozilla Tamarin, and Flex. The session will cover the programming model, Java Remoting, Pub/Sub messaging & JMS integration, Data Synchronization, Hibernate integration, charting, cinematic experiences, and media integration.

I’ve seen James demo some incredible stuff with Flex. He built a TurboGears widget with Flex at CodeMash. He demo’ed a nice bookshelf photo application there as well (using photos from CodeMash!). And, he showed a demo at the Java Posse Roundup that used transparent pages from an old medical textbook … wow! To be able see the transparent pages turn, and to be able to see through them to the previous page is REALLY cool, and really does give you a flavor for the compelling interfaces that can be built with modern technologies.

We’re really making the best of James’ time while he’s here. In addition to the evening events, Adobe, Microsoft, and SRT Solutions are presenting, “UI Smackdown 2007: Using GWT, Flex, and WPF”. This is a one-day workshop to learn more about all of these toolkits in an open spaces type of environment. We’re going to start off by presenting a quick overview of each, and then the participants will be breaking out into groups of their choosing to work with the various toolkits. The $90 registration fee includes continental breakfast and lunch. There are still a few slots available, so if you still want to sign up, do so right away so that we can make sure that we order enough food!

Java Posse Roundup: Day 2

Java Posse Roundup: Day 2

Session 1: Java Development Environments

I convened a session on Java Development Environments (IDEs, tools, etc.). My question was, “Is it a benefit or a detriment that we have choice in our tools?”. For comparison, when programming on the Microsoft platform, developers are given tools that work together out of the box. If they choose to add new tools to their arsenal, they can (especially see Jim Holmes book, “Windows Developer Power Tools”, which includes a lot of open source tools for use on the Windows platform.

In any case, as Java developers, we’re not only free to choose our own tools, but sort of forced into choosing and configuring. Yes, there are packages like MyEclipse and NetBeans which bundle things together, but the IDEs have gone back and forth many times in the past several years. I’ve personally tried at least half a dozen. Currently, I’m using Eclipse, but on the recommendation of the group here, I’m encouraged to give NetBeans another try.

The consensus of the group was generally that we’re glad to have options. I’m still left thinking, however, that we spend a lot of time spinning our wheels, evaluating tools, instead of actually solving problems for our customers (or employers).

Session 2: User Groups

The next session that I attended was on User Groups. Graham, a Crested Butte local, is considering starting a user group here, in Crested Butte. He was looking for ideas and suggestions about how to get started, while others were looking for ideas about how to grow their user groups or to keep people coming back.

I held the position of president of the Ann Arbor Computer Society for 2 years, and I got some great advice from past leaders of that group: DELEGATE. I’m not always good at it, but it’s a good objective. Having a strong leader that can delegate tasks to get done is pretty critical, I think. Several (3) of the guys in the session were from Atlanta, and the AJUG has a dynamic and energetic leader, and it sounds like he does a phenomenal job of keeping their user group going. In addition to an annual DevCon, which is well attended, they offer Job Postings for both potential employers and job seekers (JRecruiter). The Ann Arbor JUG also has this, but I want to look at what they’re doing in Atlanta, because it sounds more effective than the blog-like postings on the AAJUG.

Remote user groups (Taos, Crested Butte) face different challenges. There are few area users, and having a JUG may be too restrictive. It sounds like Dean from Taos and Graham from Crested Butte may create a more encompassing group that serves all software developers, rather than limiting to a JUG.

Chris Adamson was also in attendance. He is an editor for java.net, and he offered to help solicit updates for the JUG list that they maintain. GREAT IDEA, since they really have gotten out of date.

The basic “take-aways” from the session were:

1.Start small. None of the big groups started big. We all started with 2 or 3 people who wanted to get around and talk about cool stuff.
2.Have a compelling reason for people to attend meetings. Good content, opportunities to learn about jobs, etc.
3.Mix in local and national speakers, if you can. National speakers provide visibility to the group, while local speakers get experience talking to a group of people.

Some groups charge dues, while others are free. Some are corporate sponsored, others are not. You just have to find what works in your area.

I would love to create a “meta-group” of JUGs or other user group leaders who might communicate on an eGroup or such to toss ideas back and forth. Maybe we can start with the list on Java.Net?

Java User Groups on Java.net: http://tinyurl.com/36r2ku

Here’s a view of what Sun coined as the Top 50 JUGS:

http://wiki.java.net/bin/view/JUGs/SunTop50JUGProgram

Session 3: Convergence of Desktop/Web/Mobile

Joe Nuxoll convened a session on the convergence of desktop, web, and mobile application development. Questions were raised about how to determine which platform to develop for, or if it made sense to sometimes build a web app that could be used on a desktop. Mobile has its own set of challenges, but even so, we’re becoming more demanding about what we expect in mobile apps.

One real key is that a lot of time users don’t even know where they’re running up against web/desktop boundaries. One good example of this is Google Earth and Google Maps. Google Earth is clearly a desktop app but it accesses the web to get data that Google maps also uses. Sketchup is a nice application that also pushes these boundaries, in connection with Google Earth.

Joe’s pretty adamant about good user interface design, regardless of desktop or mobile or web. Everyone pretty much agreed that we have to use the right tool for the job, and that it’s not always clear what people need when looking at what people are CURRENTLY doing. Sometimes we need to mix stuff up and come up with a new way of interacting with the user. There are some really cool demos from demo.com that really push this envelope.