Sunday, June 27, 2010

Great Overview of Android and Java

Here is a really good overview of Android and Java, "Embracing the Android awesomeness: A quick overview". It describes the Dalvik JVM, Android SDK, and Android NDK. The NDK is the Native-code Development Kit which is a companion tool to the SDK tat lest Android application developers build performance-critical portions of their apps in native code.

Saturday, June 19, 2010

Editing Video in the Cloud with YouTube

YouTube has recently announced that you can now edit your videos all within your browser. Check out this blog posting. This is really impressive. So now you can edit videos, create a new mash-up of videos, and even add audio to it all within your web browser!

Saturday, June 05, 2010

Agility and the DoD

The DoD is looking at Agile development techniques more seriously lately. The "Command and Control" Gets Agile explores recent developments. Like any large organization, becoming agile is not just an initiative but a fundamental cultural and organizational change. At least this is acknowledged in 'The Agility Imperative' and related topical discussions taking place within the C2 circles.

What is not surprising is the how open source technology has been successful in non-DoD organizations as stated in "Agile can help DoD save its projects". A consistent organizational pattern emerges where agility is successful on a limited scope implementation but not on a larger enterprise level. So the on going question is, how to implement agility into the existing bureaucracy? Yet another viewpoint is described in "Agile and the DoD" whitepaper. Time will tell on this one.

Monday, May 24, 2010

Graphs and Disruptive Database Technology

I read a really good article recently about graph databases and the NOSQL (Not Only SQL) movement that has been rapidly changing the web. "Graph Databases, NOSQL, and Neo4j" This article is highly technical computer science and has a lot of useful links and references. Plan to keep an eye on this stuff since it is where database technology and web development is heading.

The transaction-less CAP-theorem and BASE (Basically Available, Soft-state, Evenutally) systems theory are of particular interest. A good argument against why the tried-and-proven ACID theory no longer always works on the web is presented and makes a lot of sense.

The article does a nice Neo4J description and walkthrough.

Sunday, April 11, 2010

Adobe's New Development Tools for 2010

Adobe is moving in the right direction with Flash Builder 4 based what I have read. "Adobe Launches Flash Builder 4" provides a good overview of its features. There is a new component framework supported in this release called, Spark. Here is a brief Spark overview and a sample Spark application.

Of real interest is the Catalyst expressive design tool mentioned. Read more about Catalyst in the Adobe Labs.

Father of Java Resigns and Comtemplates the Future

This is a notable news item more for historical purposes of the Java technology ecosystem, "Father of Java" Resigns from Sun/Oracle. My initial reaction to this is a bit of sadness since John Gosling has been a instrumental leader for Java technology. I wonder if IBM or Google is talking with Mr. Gosling. He will be missed but I think his decision is a good one.

The future of Java innovation and where Gosling ends up will be something to watch. Here is John Gosling's blog entry announcing his decision. I think this graphic says it all.

Friday, March 05, 2010

Java on Android better than iPhone?

Google Android has only been available for a short time compared to the Apple iPhone and it is already showing its prowess as a serous tool. Java is the underlying foundation for Android and thus its power. "Where Android beats the iPhone" provides an excellent argument as to why Android has some serious advantages over the iPhone.

If you know Java and use Eclipse, you are only a few hours away from creating your first Android application. Some really impressive features on Android are GScript and Remote DB. GScript allows you to create small applications that allows the saving/editing and running of shell scripts from within Android and fire them off with a tap. Remote DB lets you turn any SQL query into a button that searches the database remotely, then displays the results.

Here's an interesting point from the InfoWorld article:
"While Java programmers will feel right at home with Android on Eclipse, it isn't just for Java programmers; the phone can run any language embedded in Java. Projects like Jython and JRuby are great solutions, and dozens are out there. There are similar options in the iPhone world, but they're crippled by Apple's fear of meta-programming and the evils that can be done with eval."

Establishing an open ecosystem and leveraging Java is where Android shines. The integration with Eclipse in particular is where minimal training is required for experienced Java developers. This is definitely a mobile platform to watch if you are a Java developer.

Saturday, February 27, 2010

Myths About Older Developers

I saw an interesting article about 'older developers', "Five Myths About Older Developers" which is an very relevant topic. I have been in the software engineering business professionally for 20 years now and have the perspective of the developer, team lead, architect, and project management viewpoints. The blog post, "Five Pervasive Myths About Older Developers" is an excellent discussion of this topic. The ServerSide discussion response threads about this topic are all lively and thoughtful.

What is particularly surprising to me is the notion that Java has become the new COBOL. The Java ecosystem exhibits many of the characteristics of what happened with COBOL over its history. However, I think Java is more dynamic and is continuing to evolve and adapt.

On another point, ageism is a area of interest to me in organizational behavior so this topic that will continue to be in the forefront in the software engineering business as our field continues to evolve.

Monday, February 01, 2010

Online Photo Editor, Pixlr

JAlbum recently released its online web application that includes an online photo editing tool, Pixlr. Pixlr is a very useful lightweight photo or image edit tool. Pixlr includes a Windows screen capture utility and a Firefox plugin, called Pixlr Grabber.

I tested the online photo editing tool, Pixlr Editor, and was able to import and crop images from my local machine with no problems. This is really impressive and just simply works.

Saturday, January 09, 2010

OpenGL and DirectX Dilemma 2010

The graphics API wars and the business as usual tactics employed by Microsoft continue. "Why you should use OpenGL and not DirectX" contains a very good overview of the Direct3D vs. OpenGL (back in the late 90s) and the current DirectX vs. OpenGL debate occurring today. This blog posting, "OpenGL instead of DirectX" provides an excellent overview of the advantages OpenGL has and a concise recap of the historical debate that has occurred in the gaming development industry. Seems that many gaming developers today have forgotten recent history.

At any rate, the bottom line is OpenGL is for the future (OpenGL supports Windows, Mac, Linux, iPhone, Android, PS3, Wii, DS, PSP, etc.) and DirectX is being driven by typical FUD (fear uncertainty and doubt) that Microsoft has been successfully using for years. So if you are a serious game developer and want to support the future of gaming (i.e., mobile and web-based), then OpenGL is a very logical choice. Choosing DirectX will locks you into Windows and XBox only which is what Microsoft wants you to do. OpenGL opens up all the best modern platforms and future mobile/web/cloud platforms of the future.

Thursday, December 31, 2009

Deploy Windows Applications with VMware ThinApp

VMware has a product called ThinApp (Wikipedia) (formerly Thinstall) which is an application virtualization and portable application creator suite by VMware that can package conventional applications so that they become portable applications. These thin apps virtualize the entire underlying Windows registry and device driver stack so that you can package and deploy portable applications on any type of storage device (i.e., USB drive, flash drive, etc...) Check it VMware Thinapp.

What makes ThinApp compeling is that users run applications on virtually any computer they have access to, including kiosk and hotel PCs. They won’t need to install software or device drivers and won’t need admin rights. Applications run directly from portable storage devices, including Flash drives.

Sounds promising... this is something to research in 2010.

Tuesday, December 22, 2009

Chrome on Linux Performance

I finally found the time to install, test and use Google Chrome (specifically Chromium) web browser for Linux. All I can say is wow! This browser is the fastest I have seen to date. In comparison to Firefox 3.5 on the same machine, this browser is blazingly fast. Especially YouTube for some reason. There apparently are some internal optimizations that Chrome implements or that YouTube exploits for video performance.

I installed the lastest Chromium on my Acer Aspire One Linux netbook and it just flies. Since doing this I have switched to using Chromium as my primary browser. The rough edges I see are Flash Player 10 support in some sites (like Hulu, Vevo) and some UI widget strangeness that are a minor annoyance. Overall, the lightning fast performance of Chrome on Linux far outweighs any of these minor annoyances which will be resolved as Chrome on Linux matures. Great job to the folks working on Chromium for Linux.

Wednesday, December 16, 2009

OS Dependency Dilemma

Google Chrome for Mac requires Mac OS X 10.5 or higher. The operating system version dependency appears to be universal today. I see these same issues on Windows (i.e., .NET 3.0/3.5 or greater requires XP or greater) and Linux also… Hmm… The announcement and wide spread release of Google Chrome OS in 2010 is just-in-time for mitigating the OS dependency dilemma. On my primary home machine, I plan to upgrade my MacBook to Mac OS X 10.6 Snow Leopard so that I can use Chrome for Mac on it. I am currently running Mac OS X Tiger 10.4 since 2006 which is starting to show its age.

Based on the operating system dependencies and upgrade dilemma, it appears that operating systems now have a useful lifespan of approximately 2 years before you are forced to upgrade in order to the latest software to work (i.e., Google Chrome, Handbrake, etc.) For me, this used to be a 3-4 year lifecycle.

Anyway, I plan to upgrade to Mac OS X 10.6 (Snow Leopard) on my MacBook over the Holiday break later this month.

Friday, December 04, 2009

The New Wave

I received my Google Wave account last month. After playing with it, I can see where Waves will be beneficial in the future. For the short-term, I think understanding the concept, technology, and potential will take some time for the 95% of today's users.

"The Completed Guide to Google Wave" is the first book I have seen published about Wave. It is available online and for $6 you can purchase a downloaded PDF e-book. The book talks about how Google didn't choose Wave's name for the reason you might assume—as a play on the idea of surfing the web. Its engineers were paying homage to writer and director Joss Whedon's brief but well-loved science fiction TV series, Firefly (2002-2003). Very cool!

Wednesday, October 07, 2009

Cloud-Based Detection of Malware and Viruses

The advent of cloud-computing brings with it the need to secure the cloud serveres for all internet enabled devices that will be accessing cloud services. In the "Enhanced Detection of Malware" article, the authors propose a cloud-based anti-malware/anti-virus architecture. The article goes into quite some detail and has some really good visualizations of the proposed architecture that Intel is researching. Intel has been researching these architectures for quite some time. The proposed Cloud Anti-virus Server component make sense.

This architecture makes extensive use of x86 virtualization leveraging Intel Virtualization Technology (Intel VT) and Intel Active Management Technology (Intel AMT) microprocessor capabilities. Here is a link to the OpenAMT site.

There is an excellent set of research resources in the references section of the article. This is a must read for anyone involved in systems administration, network engineering, systems engineering and security of networks.

Tuesday, September 29, 2009

Google Sites Data API

Google Sites is eventually going to be the cloud-based collaboration platform many companies use. This prediction just took on another facet with the recent release of the Google Sites Data API last week. The new API allows you to use Java, Javascript, .NET, PHP, or Python as the scripting languages to customize Google Sites to your needs. It is not only limited to Google Sites but to all of Google's online properties including YouTube, Sites, Docs, Calendar, Financial, Blogger, Health, Maps...

Thursday, August 27, 2009

Web-based Diagramming!

While surfing the web found a few really nice web-based diagramming tools. Here they are
diagrammr
Diagramic
gliffy
websequencediagrams

Of these four, gliffy is the most polished. It is available in a basic (free) SaaS and premium (paid) SaaS application. All of these are excellent examples of web-based software leveraging the cloud and your web browser.

I played with each of them and really like gliffy since it can do all types of diagrams including flowcharts, floor plans, business activity, UML, network diagrams, org charts, etc. This is a whole new category of web-based applications that provide functionality previously limited to desktop diagramming applications like Visio, Dia, Gimp, OpenOffice, etc. This is definitely an emerging category to watch evolve and use.

Now only if gliffy could evolve and start importing Visio .vsd files... now that would be entirely impressive.

Monday, August 10, 2009

Botnets and New Defense Techniques

Recently, I read a really good article that describes advances in botnets, malware, bot-herding, and advances in defenses against this tuff. "The Dark Cloud: Understanding and Defending Against Botnets and Stealthy Malware" provides a good explanation of botnets, stealthy malware, and the sophisticated internet/web threats they represent in the future. It discusses several advanced concepts including: botnets, bot-herder, polymorphism, rootkitting, hyperjacking, etc..

The article makes an interesting analysis of the botnet Life-cycle. There are some really good diagrams.

Saturday, July 11, 2009

TweetDeck First Impressions

I was looking for practical examples of Adobe AIR applications and recently discovered that TweetDeck is developed using Adobe AIR. Very cool. After downloading and installing it, I am impressed with Adobe AIR. I have been getting deeper into Adobe technologies (LiveCycle, Flex, AIR) preparing to develop a few RIA research prototypes and just experimenting with the Adobe stuff out of curiosity.

As a side note, TweetDeck is actually a decent application if you are a Twitter and/or Facebook user.

Chrome OS

After Google released Chrome last year, this was anticipated. They came out with a bang and I am looking forward to Chrome OS. It is a disruptive announcement and is indirect shot at Microsoft. The next 12-months is going to be very exciting as always. This is the da bomb announcement from Google this year. Google just has not stopped innovating in 2009.

This article has some very good points about Chrome OS admist all the media buzz, FUD, and propoganda from all sides.