In Gmail today I saw this ad at the top of the page:
You have to keep in mind that ATA suspended operations and filed for bankruptcy the other day.
In Gmail today I saw this ad at the top of the page:
Is it just me or does it seem wrong that an insurance brokerage company such as esurance is doing a movie tie-in with Speed Racer? I mean, we’re talking about a company who benefits when people are predictable (i.e. good) drivers and they’re sponsoring a movie about someone who drives recklessly. Tell me this just doesn’t seem right from a marketing stand point.
Google announced their App Engine initiative today. It’s a web application building environment that provides the runtime, the application framework, the database and the storage space. The first version supports Python and comes with enough storage, CPU and data transfer for most initial applications.
I signed up and got my beta account tonight. They’re giving out 10,000 accounts during the beta. I got going on the tutorial and got to the next to last section where they talk about static files and mapping them with the application description and boom! it breaks. I mean, I take exactly what the tutorial shows about mapping in external stylesheets and it won’t load the application descriptor any longer. I traced into some of the code in their appserver Python code and there seems to be a problem with how they’re mapping the file paths with regular expressions. I’m not a Python guru so I’ll let them figure it out (plus I’m tired) but it’s not like I’m on an exotic system (Thinkpad running XP with Python 2.5.2) and I already saw a few others in the user group talking about this same issue.
I was able to get around it by mapping the css files directly using a static_files descriptor vs. a static_dir descriptor so I can keep going at least.
Overall the environment seems pretty cool to begin with. Creating tables in the BigTable store via Python seems pretty damn easy. Scaling should be pretty easy as well unless you do stupid things. Also, being able to tie in directly to the Google user accounts makes things very very easy as well.
I think a lot of folks will gravitate towards this to try it out but I do wonder how many will really build apps on this system since its same advantages are also its biggest disadvantage. You’re tied to the Google platform now. Sure, you got going fast but now how do you scale your app/company when you need more control? Yes, the app will scale but we all know that once you get to a certain size you end up with more than just a web application. Then again, you could probably host some of your application on your own servers and then just connect to the Google servers/data store via REST or other web service APIs.
Amazon’s offering, while not as integrated, seems to offer more ultimate flexibility that you can grow with and then not being tied into using them for everything down the road. You can build whatever environment you want on their EC2 platform, use S3 however you want and also build on SimpleDB or just deploy MySQL on EC2 instances for your database access.
Each platform will appeal to people for different reasons. I think I would gravitate towards Google just for its ease of use (so far) and ability to get an application launched quickly but if my app got popular I’d really have to start figuring out how much it will cost to scale on Google once they get out of beta and see if I can live with the constraints it puts on me. I’ll know more when they start to disclose more concrete details about their future plans for App Engine.
Some of my friends, Stephan and Cyril, from my days at Vignette (Epicentric before the acquisition) have been building this site, Yokway, and they sent me an invite today. I gave it a try and it’s pretty cool. Louis Gray posted about it a while back and has a really great write up. The basic idea is that you trust your friends a lot more and are probably more interested in what they have to say other than people like, say, Robert Scoble.
When someone posts that you have subscribed to you see it in your feed along with their comments about the link. You also see comments and ratings by other people that have subscribed to their link. It will be interesting to see how this works if you subscribe to someone that is very popular and the comments get huge. The way the interface is now it’s hard to see if it has tools to help deal with that. Scrolling through 100 comments on a post would start to get a little daunting.
Along with seeing the link you can also add it to your “memory” which seems to be the same as starring something in Google-speak.
Overall I think it’s pretty slick and is an interesting take on social bookmarking and knowledge sharing. It’s very mature looking for a closed beta. I’m looking forward to it when they get more users behind it. I’ll let you know when it’s open for public use.
I installed the Google calendar sync tool when it came out recently and I have it working pretty good. The one side effect is that I had to login in to my work e-mail address Google account and then give my normal Google account permission to change/manage that Google calendar and then put the work calendar into my normal account’s Calendar view. It works pretty slick now but it definitely could be documented better. Non-geeks are not going to do well figuring this out.
The strange side effect that I noticed however is that each time it runs it adds like 60 calendar entries into my deleted items folder. They are all set with a start time of 12/31/1979 and a meeting time of 4:00pm to 4:30pm. So after running this for a while I have 17000+ items in my deleted folder. It’s a good thing I noticed this. I’m guessing that each entry corresponds to an entry in my calendar and that it’s used as some sort of temporary calendar object used during the sync but it’s really just a wild guess.
This is probably something that needs to be fixed.
Update: They have fixed this!
Start Slide Show with PicLens LiteI’ve been doing some work in Spring MVC (Spring v2.5.1) and using annotations to see how simple I can keep my XML configuration (pretty small so far) and while coming across a few interesting gotchas that I’ll be describing in another entry I come across this most maddening problem. If you have a Spring MVC controller defined and it even has an inner class in it, the Spring loader will not find it. It basically ignores it. I had been using inner classes for form beans and validators on some of my controllers and it would just not work. By pulling them out into their own classes, however, everything worked. That was pretty annoying to say the least.
Here’s the bug: http://jira.springframework.org/browse/SPR-4324
And it is fixed in 2.5.2. So if you’re using annotations in Spring, just go ahead and upgrade. It will save you lots of pain.
The other thing, mind your base packages on annotation scans. I’ll be posting that experience in the next day or so. I’m still slapping my head over that on.
I’ve been using NetBeans 6 for a while now. For the most part I like it. I give it a thumbs up overall and at this point I generally prefer it over Eclipse for general web development.
Here, however, is my wishlist:
1. Give me an easier way to find the implementations of a particular interface in my code. IDEA makes it easy by having a little icon I click on to see a quick list of what implementations the project is aware of for that interface. The only way I’ve found so far is to hit alt-shift-f12, then select the interface to see the list of implementations. Pretty much every developer I know codes to interfaces nowadays so this should seem a pretty reasonable request.
2. TestNG integration. I’ve got a work-around right now but it sure ain’t pretty if I need to debug a test.
3. Better bracket matching in the JSP editor. I generally write jspx and tagx files so maybe this is just with the JSP XML editor but the jsp:root end tag never lines up with the start tag. It’s always indented one column. It’s just strange.
4. Better completion in the JSP editor. I wasn’t sure I was going to add this but it seems the editor could be better at completing closing tags for me. I don’t like it to auto-create the closing tag when I start a tag bug when I start to close the tag it should be a little smarter about this.
5. Cut down on the weird errors and warnings. In one of my entity classes I have a warning that the project does not contain a persistence unit. What does that mean? I’m pretty sure it is getting confused and thinks I am running an EJB3 application (I’m not). This is most likely due to the fact that I am using EJB3 annotations for defining my data model.
6. A better debugging interface. The debugging interface is just a royal PITA. It’s completely clunky to navigate local variables and inspect my way through an object graph.
7. Make it easier to debug a web application. It just seems non-intuitive with the different logging screens that pop-up or are used when you launch your web app in Tomcat (I haven’t tried Glassfish). It also seems like it launches my application twice. I’ve seen Spring start itself twice where as it doesn’t do that when I run outside of NetBeans. IDEA has this streamlined much more.
Overall I am actually pretty happy with NetBeans but these are just things that cause my some slight pain on a day-to-day basis.
I got a new desktop for home the other day and I was downloading all my development tools and something strange happened. I downloaded Ant 1.7.0 and unzipped it into my Java tools directory, set my ANT_HOME variable and added all this to my PATH and typed “ant” and it couldn’t find it. Weird.
I go to the Ant bin directory and there are only 3 .cmd files in the directory. None of which are the ant.bat file. The checksum on the zip file was fine as well. I check the Ant distribution zip file size and it’s 11,288,363. I figure I’ll just do a sanity check and download it again and the new download is 11,390,509. WTF? I haven’t modified either of the zip files since downloading.
The first download came from the http://apache.mirrors.timporter.net/ mirror. I originally downloaded the file on December 21st. I just downloaded it again and now it’s the same size as the distribution I downloaded earlier tonight that works fine. I’m not sure how a build fails like that and gets mirrored…just strange I guess. At least the problem on timporter.net has already been fixed.
Warning: Shameless plug! I’m still looking to hire some great Java developers. I just found one the other day but still have 3 open reqs (what can I say, we’re growing). If you’re in the San Francisco area, drop me a line. We have an amazing space (http://sfarmory.com) in the Mission district that we just moved into and a great group of people to work with. You also need to be okay working in the adult industry. One of the developers I work with has a great post about the jobs.
This will end up being a multi-part posting since I’m still evaluating NetBeans but my experience this morning has me really wondering if I can use it. But not for the reasons you might expect. NetBeans itself has been fine for me. It’s a little weird to use their ant build if you have a build.xml as well but that’s another story. Does anyone know if there is a way to show more than one row of files that you have open at the top? It’s key bindings aren’t very friendly to Mac laptop keyboards also but those can be remapped pretty easily.
Anyways, on to important things. I like to unit test my code. I like unit tests, integration tests, etc. And I like to use TestNG over JUnit4. Why? Because I can not stand the fact that JUnit4 requires your @BeforeClass and @AfterClass methods to be static. There are other reasons as well but it just feels so awkward to have that requirement. Anyway, the reason that impacts me with NetBeans is that there is not currently a TestNG plugin for NetBeans. I want a way to easily start a test run with the debugger attached already. Normally I don’t do this very often but this morning I needed to and I realized I can’t do that! Of course you can find a way but that’s not really the point. It’s a huge time savings to make this easy. But I don’t like NetBeans more to justify the time actually build it myself. Has anyone else out there started one? I’ll help if you need some help, though.
The NetBeans editor is pretty good now. I still think IDEA is better, though. Part of that is just habit I think, though, since most of the features I use a lot in IDEA are now available in NetBeans. So far it seems extremely stable in my use. It’s easier and simpler to understand the file/project navigation than in Eclipse, also. The built-in profiler has been awesome for me so far as well. It has the font anti-aliasing now, too. Well, maybe that’s just the Mac thing kicking in…not sure.
I do wish they did an auto-import like IDEA has. Their import dialog can get a little overwhelming if you copy in a chunk of code and need a lot of imports resolved. It’s easy to not realize you need to scroll down to verify more. I think IDEA does this better going from one import to the next that it can’t automatically determine which instance of a type you are attempting to resolve . IDEA’s ant editor seems better as well.
More to come another day.
I recently took a new job at kink.com (warning: not safe for work) to manage the software development team. I had managed a software development group in the past but for the last few years I was really more into just building software and staying heads down. If there’s any constant in the software field, though, it’s that things always change. The change for me was that I wanted to get back into leading a software group and working more with other groups inside a company. Just building the software wasn’t enough for me anymore. I’ll probably write about this more at another time but I’ll just leave it there for now.
One interesting aspect about working at a company like this is that the place has an amazingly positive vibe to it. People just don’t go and work at companies in this industry unless they want to be here so I think that is one of the things that really contributes to it.
We’re also hiring so send me a resume if you can work in San Francisco, know Java well, work with and like Hibernate (we run it as our EJB3 entity provider) and have some usable XHTML/CSS/JavaScript skills you might be a good fit. You have to take the quality of your work as a matter of personal pride to do well in this group, also. We tend to mostly run on Macs and you’ll usually have a 30″ monitor to work on. I can also pretty much guarantee that we have one of the most unique work environments you’ll ever experience.
Bad Behavior has blocked 177 access attempts in the last 7 days.