
Recently in Java Category

I will be attending
Adobe MAX for the first time, this year. Needless to say, I'm very excited and grateful to my employer,
4Point, for sending me on their dime (I surely could never afford it). I've registered for the most interesting sessions I can though my sense is that I'll be missing more than I'll be taking in. Hopefully they'll be recording all of the sessions so that I can catch up on what I missed later. One thing I won't miss will be the MAX Awards, since
Leonard Nemoy (heard of him?) is presenting. The geeks will be swooning in ecstasy, no doubt.To maximize the amount of information I can jam into my sleep-deprived brain, I intend to squeeze in as many 360Flex and FITC "Un-Conference" sessions as possible. Hopefully the rooms will be close enough together to skip quickly from one session to another so I can miss as little as possible.
Since I'll most likely be on my own most of the time, feel free to drop me a line so we can meet up. I'm getting there near noon on Sunday and will have most of the afternoon free. I'm flying back out on Thursday morning.
Hope to see you there! (Cross-posted at riagrande.com)
- Welcome and introduction to the Adobe Flash Platform
- Building multi-screen applications with the Adobe Flash Platform and Adobe Creative Suite 5
- New features in Adobe Flex 4 framework
- New features in Adobe Flash Builder 4
- Adobe Flash Catalyst CS5 for developers
- Building mobile applications: Create a game
- What's new in Adobe Flash Builder for Java developers
- New features in Adobe Flash Player 10.1
- Creating sexy applications with the Adobe Flash Platform: Designer-developer workflow
- A basic CRUD application with Zend AMF and Adobe Flex 4
- Adobe Flash Builder 4 and Adobe ColdFusion 9
- Advanced features in Adobe Flex
- ActionScript 3 for Java developers
- Adobe Flash Platform and Salesforce.com
- What's new in Adobe Flash Builder for PHP developers
- Using advanced features with Adobe Flex and PHP
- Adobe ColdFusion 9 and Adobe Flash Catalyst CS5
- Adobe Flex and BlazeDS integration with SpringSource
- Building desktop applications with Adobe AIR 2
As you may well know, Adobe Labs has developed an exciting tool called Alchemy that leverages the LLVM open source project to cross-compile C/C++ code to a common run-time byte code. This byte-code is then cross-compiled to Actionscript code which is then compiled to Actionscript byte code (ABC). The earliest and most striking example of what can be accomplished with Alchemy was the port of Doom to Flash that Dave released on Newgrounds within a week of Alchemy's launch. He has now released the Doom Triple Pack which includes the bad boys Doom, Heretic and Hexen.
The good people of Automata Studios helped Adobe develop one of the first projects for demonstrating how Alchemy works. Here is their write-up on the subject.
Cross-Compiling to Objective-C (and more!) Using XML-VM

- Added Jun Heider's materials on run-time resource profiling (Day 3, Session 2)
- Added Ryan Phelan's slides on Pixel Bender (Day 3, Session 4)
- Added Lafferty and Frishberg's slides and an example on custom ItemRenderers (Day3, Session 4)
- Added Sanchez' slides on Degrapha (Day 1, Session 2)
- (Über Edit) John from 360 Conferences has uploaded all of the presenter slides from 360|Flex Indy that he could get his hands on here. There are 33 of them, at last count. Thanks a million, John.
- Added Laura Arguello's slides from her (excellent) Mate session (Day 2, Session 5)]
One of the worst things about 360 (yes, I'm about to complain here, apologies to Tom and John) is that since there are generally 5 session going on at once, you're going to miss something. (I'll give you a second now to get over it.) Some things you'll never, ever get back (look through your high school yearbook for some quick examples). Fortunately, I have compiled a quick list of presenter materials that didn't make it onto the USB key. I will update this in the next few days as more stuff things trickles in.
I've listed these by day and session. (Note that I'm not counting the keynotes in numbering the sessions.)
Day 1
Session 1Assert Yourself (FlexUnit 4) -- Michael Labriola (ably assisted by Jeff Tapper)Session 2
SlidesDegrapha Declarative Graphics Framework - Juan Sanchez
Slides
Session 3Structured Log testing - Renaun Erickson
Missed PointsAnother Mapping API...Not! - Mansour Raad
Slides
Session 4Any Which Array But Loose - Michael Labriola
Slides
Day 2
Session 1Creating our first i18n (internationalization) Flex application - Oğuz Demirkapı
Slides
Flex Server Lib - Andy Powell
Slides
FLEXperience - Putting the UX in Flex -- Joe Johnston
Slides
Session 3How Not to Code Flex Applications - Jeff Tapper
Slides
Session 4Developers are from Mars, Designers are from Venus -- Chad Udell
Slides
Session 5Building an AIR Video Recording Spy Camera with Motion Detection -- Rich Tretola
Slides
Breaking Down your Application with Mate -- Laura Arguello
Slides
Day 3
Session 2Flex Profiling by Example - Jun HeiderSlides and source
Session 3Merapi: What's Next -- Adam FlaterSession 4
Source announced at 360|FlexBending and Flexing with PixelBender - Ryan Phelan
Slides
Custom Item Renderers - Lafferty and Frishberg
Slides Example
That's all for now. Check back later in case more stuff pops up (it surely will).
When I heard that IBM was trying to acquire Sun, it seemed like a no-brainer. Even if a little part of their motivation was to spite Microsoft, IBM has long been a driving force behind Java's successes. In recent years, they've spearheaded the very successful Eclipse project, acquired Rational, continued to invest in Websphere... So, to have Sun and IBM under the same banner just seemed to be the perfect union between very different but nonetheless compatible companies.
Well, it wasn't meant to be. After IBM dropped negotiations, Sun Microsystems was left at the altar, wondering what had happened.
Caught you on the rebound
The bouquets from the cancelled IBM/Sun wedding hadn't even faded when Oracle entered the scene and, for a paltry 10 cents more a share ($9.50 vs $9.40, or 1.06% difference), swept up a darling of the industry that had been reeling since the "dot com" bubble burst in the early 2000's.
This unexpected acquisition is a great example of how a company can leverage its strengths (e.g. solid product, reputation, cash reserves) to build up a foundation for further success. In this case, given the level of trust that people (customers and potential customers) already have in their DBMS, I can easily imagine Oracle developing and packaging Oracle-branded turnkey hardware+software DBMS solutions à la Google Search Appliance.
Whether you're talking about a rack-mounted cluster of servers or a single box, they will be able to deliver and support integrated solutions featuring Sun hardware, Solaris and the latest version of Oracle. Just brand it all as an Oracle product, set up a clear (subscription-based?) fee structure and start printing money. If they do it right, Oracle may well have hit a home run with this acquisition.
Et tu, Java?
As for the Java angle, well, Oracle is already closely integrated with Java (see: Java stored procedures in Oracle), so on the technical side they'll be working in known territory. What remains to be seen is whether they will be able to increase Java's market share and what they will do with fledgling initiatives such as JavaFX.
I'm also particularly curious to see how IBM will react on the Java front. I can' t imagine them moving to a scorched earth policy and trying to sabotage the progress that Java has made in recent years, but even if they just lose some of their zealousness, it could damage the Java market overall. I personally believe that without IBM's support over the years, Java would never have had the level of success it has enjoyed. Oh well, we'll find out soon enough.
Congratulations, Oracle. Now go forth, be fruitful and multiply.
As always, thank you for reading and I invite your comments on this topic.
To put the discussion in context: this was shortly after the announcement of JavaFX at JavaOne, shortly before Flex went open source and before the production release of the Silverlight SDK. AJAX was still considered a pretty exotic bird and therefore dominates a good part of the early discussion.
Topics of discussion include (in no particular order):
- Open source in the RIA marketplace (dual licensing?)
- A good amount of discussion on AJAX
- The Silverlight Alpha SDK releases of the time (1.0 and 1.1)
- The (then recent) release of JavaFX... to mixed reviews
- Do Silverlight and JavaFX have a shot at dethroning Flash/Flex? (Jury still out... presumed lost.)
- That old whipping boy: search engine optimization with RIAs ("But can Google index your RIA?")
- Security in RIAs
It's amazing how fast things change in the development world. It's equally amazing how we are still discussing/disagreeing on many of the same issues nearly two years later. Anyways, I personally enjoyed listening to the discussion... perhaps you will, too.
Check it out here.
Flex apps are beasts that thrive on a healthy serving of server-side XML. How exactly you go about feeding any given app depends on your client's environment and practices, as well as your skill set and comfort level with the different preferred technologies.
My personal background lies mainly in Java development and the server-side technologies I have used most often are SOAP and servlets (i.e. plain old servlets, Struts and Spring). While I can acknowledge the value of SOAP, pay me a buck for every time I've heard someone complain about
the overhead of creating/using SOAP-based services and I'd be rich enough not to be
writing this. On the other hand, using servlets to satisfy the voracious appetite of a healthy Flex app has its own draw-backs.
I've suspected for some time that there is a more elegant, more lightweight way to write Flex-friendly XML-producing server-side Java code. I was therefore excited when asked to explore the world of Java RESTful web services during the lead-in to a new project here at 4Point. What follows is a summary of the many promising things I have learned in the past few days -- things that have led me to ask: "Is it finally time to scrub out SOAP?"
REST in a nutshell
REST
stands for "Representational State Transfer", but frankly, the name doesn't
really say much about what it really is. REST is a means of
exposing a resource to outside interaction through a combination of
a URI and an HTTP method (i.e. one of POST, GET, PUT and DELETE). These
methods are mapped (roughly) to the classic CRUD operations, allowing you to create, read, update and delete data.
| HTTP | CRUD | ||
|---|---|---|---|
| POST | Create | ||
| GET | -- Equivalent --> | Read | |
| PUT | Update |
||
| DELETE | Delete |
In order to invoke an operation on a REST resource, you simply invoke the appropriate URL using the appropriate HTTP method ...and voilà!
For starters, I've decided to look at how I've set up my development tools. I need to find the best, clearest, most ocularly soothing font for editing code in Flex Builder and elsewhere.
Eyeballing the best possible font
I've come across this fine site by Trevor Lowing which provides a collection (with clever examples) of different code-friendly "mono-spaced" fonts. It puts forward the following "good programming font criteria":
The list seems pretty complete to me, though I might add "thick enough for viewing on LCD screen", since some fonts seems downright Olsenish for my tastes...
- Crisp, clear characters
- Extended character set
- Good use of white space
- 'l', '1' and 'i' are easily distinguished
- '0', 'o' and 'O' are easily distinguished
- Forward quotes are easily distinguished from back quotes (ideally with a "mirrored" appearance)
- Clear punctuation characters, especially braces, parentheses and brackets
Setting text editor fonts in FlexBuilder/Eclipse
If you're a Flex Builder/Eclipse user, here is how you change the font used for editing files:
Go to Window > Preferences
From there, go to General > Appearance > Colors and Fonts
Select Basic and double-click on "Text Font". The font settings dialog will pop up.

Make sure to have an editor open, so that when you click on "Ok" and then "Apply", you will see the font changing in the background. This will allow you to try a number of fonts until you get the settings just right.
Your take?
I plan on trying out new fonts in the coming weeks so I'd be interested in finding out what font you use for coding/scripting. What font size? What display configuration (size, single or dual display) and screen resolution?
Thanks for reading!
Taylor