Author Archive

Is Java Better than PHP for Web Applications?


Yesterday, I wrote about Moving from PHP to Java. Since then, I’ve had another conversation about why Java is better for web applications than PHP.

The two main points of discussion were 1) database use and 2) debugging.

Again, when I had finished the conversation, I wasn’t able to walk away believing that Java is the better choice.

Database Processing
The argument concerning the database was about developing serious database applications and not just blogs or small open source applications. We were talking large corporate applications that run business or SaaS (Software as a Service) applications. Something with some serious meat to it. Applications with databases designs containing over 100 tables.

The opinion was that PHP is great for little web applications with less than a dozen tables in the database, but once you start producing pages that hit a dozen or so queries to build financial statements (or whatever) then PHP starts to fall apart. The entire conversation was that in development you want you programmers producing code and not having to write tons of queries to extract the necessary data for that screen. Additionally, programmers should be accessing objects as opposed to generating queries and pulling data.

The conversation went to how PHP suffers when you want to add new fields or new tables. It seems that you have to rewrite entire sections of your PHP application to adjust to this style of change.

My response?

Design. Small open source projects are fine for embedding queries directly into the construction of the page. However, for actual applications I would hope that Views and Stored Procedures would be used to supply data. I would also hope that your framework took care of data transactions and that your designs took advantage of objects.

Designing is where you find solutions for these problems, not language.

Debugging
Java is compiled and has excellent debugging utilities, while PHP requires echo statements and a lot of extra code.

My response?

Eclipse for PHP has an actual debugger and writing test units never hurt development. Yet, I will say that Java does have a stronger debugging environment, but not by much.

Moving from PHP to Java

Java

Recently, the opportunity for me to get involved with Java has presented itself for the second time in my career. I’ve been a PHP developer for almost 10 years. About a decade ago I worked for a prestigious consulting firm and during that time, two groups surfaced.

One was the Java group and they were headstrong and excited about developing Java beans and compiling applications that could run anywhere you could install a JRE.

The other group was a little more humble but excited about Linux commands. I was more fond of Linux at the time and PHP offered a very simple and practical approach to web development. However, the applications could only be ran on Apache servers (we could put them on Microsoft stuff, but why?).

I chose the PHP/MySQL path and have been very satisfied.

Today, I have the opportunity to work with Java once again. SpringSource to be exact.

I’m a little excited about it and more so than I imagined I would be. For one thing, the Google AppEngine is a Java engine. This is big for me, as I love Google and would like to become more involved in using their AppEngine, but it’s not native to PHP. So, for me to take advantage of the Google AppEngine, I must know and understand Java.

SourceSpring provides a customized Eclipse IDE. I use Eclipse for PHP as my IDE along with the Zend Framework for my MVC. So, I’m already familiar with the IDE. I’m also familiair with web applications, object oriented concepts, and the MVC architecture.

I believe developing in SourceSpring is within my reach and worth exploring.

However, I remember how “Java” is complex. The language itself is elegant and wonderful, but the complexity of stacking your environment with dependencies and integrating code architecture is a bit much. I am a huge believer that software development as well as the software itself, should be simple. Keep it simple. I feel that Java web development has stepped outside the circle of simplicity.

There must be a reason for this.

I can appreciate an object hierarchy and it’s usefulness. I understand the need to know what objects are inherited from what other objects. However, this has nothing to do with the language itself. Most object oriented languages do this and this is accomplished with libraries in PHP. So, I don’t consider having a solid class hierarchy an advantage specific for “Java”.

I also realize that PHP is interrupted and Java is known for it’s speed. This could be considered an advantage for Java, but the same could be said for .NET.

PHP is by no means slow. Besides, all good architectural designs will strive to serve cached pages and it takes little resources to serve a PHP form. PHP takes the “speed hit” in every debate, but I don’t feel it is just. I believe speed comes from good design and properly written code.

So, I’m beginning the quest to understand why Java is so highly praised as a development environment by corporations. Most Java developers I know seem to look down upon PHP for some reason. I’m not exactly sure why and whenever I have an actual debate over it, I never walk away feeling they’ve given me any good reason to believe Java is superior for web applications.

How Google TV Plans to Simplify Television

Google TV

I love Google.

Any modern day developer who is actively developing Android and iPhone applications should be very excited to know that Google is headed for TV... And they have a developer kit.

Having entered into a partnership with Intel and Sony, Google is aggressively planning to get Google TV into your living room as early as this fall.

Google plans to use Android phones as a device capable of communicating with Google TV, just like a remote control does today. Search for television programs you want to watch on TV using your Android phone and have the results displayed directly on your Google TV.

Like it or not, Google has the resources and experience to change the way we look at television. Google has full intention of merging the web with television and has created a business model that will clearly challenge Apple, TiVo, and perhaps even cable itself.

For the first time in history, Google will provide an open development platform that will usher in a whole new era of software development. Developers from all over the world will have the opportunity to create interactive applications designed to run on your TV.

With Flash support expected to be built right into Google TV, users will be able to experience applications such as Farmville, right on their big screen HDTV. Although this style of application might be best suited for notebook computers, Flash support for television does open doors for new application concepts and opportunities.

Personally, I believe Google has done much for the open source community, business, and obviously the internet. And with an informal slogan of "don't be evil"... I'm excited to see how this venture changes our world and creates new business and opportunity for the little guys.

To learn more, visit the official site for Google TV.

Is Social Networking Hazardous to Your Career?

I respect privacy and I don’t blast my name all over the internet. In fact, I have a number of writing aliases that I use to help protect my privacy.

My name is Michael and I’ll almost always use my real first name, but I never use my whole name. Painful as it is, I use different passwords for different website accounts too.

I love the internet… I just don’t trust it.

When I first got on Facebook, I did so because my family was there and wanted to include me. So, I created an account and within a week I had 30 friends. The social circle is wide open with the friends of friends concept.

The thing is, I don’t want people from my elementary years contacting me. That’s just not my style. So, I deactivated my account and created and alias account, applied all the privacy settings and informed my family.

If you are using your real name in the social networks, then your current employer and peers can find you. When you are searching for work and start sending out your resume, just remember the recipients might be able to easily find you. Twitter, Facebook, LinkedIn, Flickr… whatever. Are you 100% sure of your privacy?

While on Facebook, I had old high school buddies sending me shots of whiskey, rolled up joints, and a number of useless stupid crap. I also had old high school girlfriends sending me retarded sex quizzes and other items that I wanted nothing to do with.

As entertaining as these things are, I can’t help but wonder why a professional accountant would be using Facebook to write a paragraph on their wall about how hammered they was last night. He was kind enough to inform everybody he wasn’t able to go to work that day, because of the party last night.

Now seriously? How smart is this?

If you ship out your resume to a company and the interested/resourceful hiring manager finds your MySpace page and discovers racial jokes, religious opinions, party pictures, or crazy comments from friends… what do you suppose their first impression will be?

Social Networking is a growing trend and you cannot assume potential or existing employers won’t search on your name. It’s happening everyday and the more savvy they are the more they will use it to find information about you. You should count on it.

Considering this, you might want to protect your image and build beneficial content by:

  • Being Careful: Don’t post anything you wouldn’t want your employer to see. Avoid foul language, poor attitudes, and negativity.
  • Being Discreet: Take advantage of privacy settings as much as possible. You might want to turn off comments if you have wild friends you can’t control.
  • Being Prepared: Monitor your social accounts regularly to ensure nothing appears you don’t want. Even comments from friends and other people can be viewed in negative light. Be prepared to have unwanted content removed.

Back from Vegas


My wife and I are married now… And Vegas was swesome.

Las Vegas is also the perfect place for nice, simple, romantic weddings. Vegas weddings.

Everything went according to plan and we had a great time. The wedding was memorable and eventful.

Thanks to everyone who attended the web-cam ceremony.

While in Vegas and since I’ve been home, I’ve been updating my resume and checking out opportunities. I looked around in Vegas, but it doesn’t seem like the type of town I’d like to live in.

No, I’m thinking somewhere along the ocean.

Tampa maybe?