A Web Developers 2008 Technology Wishlist
I try to do my best to not date any of my blog posts, but this is one of those that timing is everything! As Christmas, 2007 approaches, so does the inevitable feelings of a fresh start for all things we wish we could improve. Saving more money, losing weight, learning how to set a clock on a VCR... then again... getting rid of the VCR altogether!
As we approach 2008, we should also take stock of our development practices. We should start asking ourselves questions like "what are we developing with", "what are we offering", and "what are we doing better than our competitor's". However, I'm going to do you a favor... I'll answer some of those questions for you!
Below is a technology wish list. If we could ask Santa what to bring our web applications, below is a list of some of the technology/idea's that we should start making use of.
- Web 2.0 Principles - Let's start the list with a generality, by focusing on embracing Web 2.0. I recently purchased an MP3 player, mainly because it was a great deal from woot. It's a Sansa e250, refurbished, holds 4 GB of data, plays music, video, shows pictures... and I got it for 50 bucks total. However, all of my friends call it my "fake iPod". Even though I love it, it works just as well as an iPod, was cheaper, and I don't need the dreaded iTunes to use it... I've been labeled an outsider.
Web 1.0 is on the way to the same stigma. Even though your web applications are working well, they're just not "cool" enough. Now, you may be asking yourself, "what's the ROI on making your web applications cool"? Excellent question! Look at upgrading your applications as more of an investment in the future of application design. It's the way of the future. Embrace it... challenge yourself.. understand what the movement is and hop on the wave of change! As you develop future applications, make use of the newer technologies that are getting released every day. These new technologies are meant to make your applications more dynamic, easier to use and understand, and more powerful. One of the most difficult challenges for a web developer is to stay ahead of new technologies. As a Microsoft .NET developer, I find myself working with beta releases... not because I'm bored, but because I need to be able to use the technology as soon as it hits an official release! However, using the newer ideas helps me not only broaden my horizons, it also helps me stay ahead of the competition. - AJAX - Microsoft did us a favor, they seceded on Microsoft ATLAS. Rather than getting into a software development war with the .NET army against the rest of the world, they embraced AJAX (Asyncronous JavaScript and XML) and standardized their development platform. Since that time, they have put much backing into it's capabilities. Along side of that, all the main web browsers support the XMLHttpRequest object... the key element in AJAX's behind-the-scenes web calls. The final piece is that web savvy users are using JavaScript. So, what does a recipe of AJAX, XMLHttpRequest support, and JavaScript enabled web browsers give you after 30 minutes in the oven at 375? How about 3 excellent reasons to give up on fighting AJAX?
Embrace AJAX. Use AJAX to create better applications for your customers, decrease network activity, and populate advanced metrics on your website. The pieces are in place, the community is there, active and waiting to use websites that are cutting edge, embrace them back!
So how can you use AJAX? Here's an example. I recently adopted Digg, to include on this blog. During the sign up process, as I filled in the input boxes with my information, it posted back to me real time information. I received a "This username is available, go ahead and take it!" after typing in my username and leaving the text area. I got a "Hey, your password looks great!" after providing my password.
Is this a good reason to adopt AJAX? Because it let's you give funky messages back to your user community? No... but think about what it took to present these messages. Upon providing the username I requested, and without submitting the form, the username was compared to usernames in the database and proactively returned a message to me. AJAX gives you server side control over data with a client side look and feel. Use AJAX in your applications to control, format, secure, and manipluate data.. and to bring your applications up to speed. - RIA's - The item above discusses AJAX and user adoption, and taking advantage of a user community who embrace and enjoy the idea of proactive server activity. How about taking advantage of a user community who embrace interactive design and creativity, AKA, Rich Internet Applications?
A few years ago, before I fell into web development, I acquired an educational version of Flash 4 (don't worry, I was a student at the time!). Within hours, my first Flash movie was made. It didn't have an user interaction, but it was cool, and easy to create! I gave it up because I lacked the programming skills at the time to give it some back end power.
Fast-forward 5 years, and we now have Microsoft Silverlight, their answer to the RIA Juggernaut Flash. What's more, it provides much more programming capabilities, something along the lines of VB/C# .NET than just script (Flash uses ActionScript, a pseudo JavaScript meant to interact with Flash elements).
When you think Silverlight, dont think of it as a design tool for a side project where the audience will only be teenagers, browsing your site at 2 in the morning and looking to stay awake by playing games. Silverlight can address an audience in your business setting as well. When I think of Silverlight, I think of Star Trek.. or any Sci-Fi show. Did you ever notice what the ship staff is using, while their busy zipping around the galaxy? It's not a standard web form, with a few text boxes and a plain-jane grey submit button. It's a screen with motion, things moving and updating on the fly (speaking of which, Silverlight is AJAX enabled.. think about that!). Why not give your end users within your business a flashier design, especially if it's little to no more extra work than it would be to create your traditional HTML forms? - CardSpace Adoption - If I've been a good web developer this year, and I'm on Santa's nice list, then the last thing I'm asking him for is CardSpace adoption. Very recently, Microsoft released their latest version of Visual Studio - VS 2008. With this release came .NET 3.5, which included support for programming with CardSpace.
If you haven't seen CardSpace yet, it's a personal data-store on a user's PC where an individual can store personal information within data cards. You can have several cards, each holding as little or as much personal information as you would like to provide to a website. When you arrive at a website that supports CardSpace, rather than typing in your information to either sign-up or login, you provide your card. It verifies you, and away you go!
So what's so special about CardSpace? Well, it's much more than saving end-users from typing in personal data. CardSpace is actually changing the infrastructure for end-user validation. Any malicious user, anywhere in the world, can type in a name, phone number, email address, etc. and pretend to be someone else. However, with CardSpace, no one else can take that card away from me. No one else can log into a website as me because they stole my password, because the password must be accompanied with my card!
CardSpace is providing a new structure for website validation. It's so cutting edge... not a lot of websites are using it! However, this is mostly because the programming capabilities recently came out of beta and were released with .NET 3.5
Thanks for reading, I hope you end up with more than just a lump of coal this holiday season!


0 Comments:
Post a Comment
<< Home