If you are into web development and do a lot of funny stuff like me, then I would recommend to follow these 5 sites. The mode of follow – Bookmarking, RSS, Email Feed – might differ from me, but the one thing I am sure of is the quality of information.
1. Smashing Magazine
Definitely tops the list with the depth and research that goes into each post. If you are into web design/development and not heard of Smashing Magazine, then you are missing something! Sometimes you find the posts are really long, but its definitely worth spending the time.
Link to: Smashing Magazine
You don’t find Antonio Lupetti, the author of Woork, posting very often. But when he does, the quality is assured. The topic of posts vary from tips, techniques, tools and everything around web development. A must follow, to know about some interesting tools, which you might eventually start using!
Link to: Woork
Think quality web development tutorials, think Nettuts. I really mean it! All the tutorials posts over there are of high quality. I have a separate label in my Google Bookmarks just for Nettuts and the tutorials of my interest. Just keep tuning into Nettuts often and you will understand what I mean.
Link to: Nettuts
This is one of my recent finds. I found this blog through a guest post in Nettuts, got impressed and finally subscribed to it. The overall quality of the content is good but it may take a while before confirming its usefulness. But it looks definitely worth a try!
Link to: SpeckyBoy
Ajaxian is a simple and effective blog to keep you posted on the happenings in the AJAX world. Sometimes the posts lack depth but nevertheless a good one to follow. Let me know if you differ.
Link to: Ajaxian
This list is completely based on my experience with these sites or blogs. There is absolutely nothing between the authors of these blogs and me, except that I am a reader of theirs. Feel free to suggest more useful blogs and I will be more than pleased to add them to the list.
Woork – A must follow blog for Web developers
I came across the blog – Woork – by Antonio Lupetti a few months back. It is one of the blogs that can catch your attention almost instantly.
Nowadays, when I am stuck on something during my web development projects – like choosing a font, implementing Captcha or some AJAX controls – I instantly look up to Woork. There is a good 90% probability that you will find the relevant information there.
Just thought of sharing this info with you. Let me know if it helps…
Top 10 “On Demand” Skills for Software Freelancers
If you are planning to get into software freelancing, the first thing to care about is developing the right skill sets for your job. If you are learning something, it is better to know about the demand for each of the skill and choose the right ones that suit you.
July marks the end of an year for me, into part-time freelancing. Based on my project hunt so far, I am sharing with you the list of “on demand” skills in this blog post. Please note that the list is solely based on my experience and understanding of the freelancing market. Perception definitely varies!!
The list is meant to be read in the exact order – the skill with the most demand is listed first and so on…
I can seriously bet - if you are looking at 5 freelancing projects, at least one would be based on PHP.
PHP is a server side scripting language, that helps you develop professional web applications with an emphasis on functionality, usability, reliability and security. The major advantage of PHP is that, it works with Apache Web Server which most of the web hosting solutions (like MediaTemple etc.) use. So PHP guarantees the portability of your web application across different web hosting solutions.
If you had worked on any server side scripting language like ASP/JSP, then getting started with PHP is just a breeze.
Every server application has an associated database to persist information. MySQL is a very common and popular database in the freelancing world. If you have the SQL basics right, working with MySQL is straightforward.
Getting started with PHP
PHP – A Simple tutorial
Once you are comfortable with the basics of PHP, I would strongly recommend to get familiar with a PHP framework like – CakePHP or Zend. You would see that they reduce the development time by almost half, taking care of most of the boilerplate code!
2. HTML / CSS
Though desktop applications using Adobe AIR / Silverlight are gaining popularity, web-based (browser) applications are still the norm of the day. Since HTML and CSS are the formats which most browsers understand, they form the basis of any web application.
So, to develop a web application, using PHP or any other scripting language, HTML and CSS skills becomes a mandate. I am sure you know the basics – but if you are serious about getting into a web development project, an advanced knowledge of both these technologies are recommended.
W3Schools – HTML Tutorial
W3Schools – CSS Tutorial
AJAX was a buzzword sometime back, but now it is very commonplace. Folks link AJAX with jazzy looking applications, but it is more than that. Though AJAX makes your application look sophisticated, its primary purpose of existence is to provide “asynchronous” client-server communication.
W3Schools – AJAX Tutorial
YUI (Yahoo! User Interface Library)
4. Flash Applications
Flash Applications are quite a rage still, considering their thick client characteristics. If you have this skill, then you are in game for quite a few freelancing projects. Also, Flash player based applications and presentations are pretty popular.
The major downside is the commercial aspect of the product – Adobe Flash, used to create Flash applications.
Java is a very popular freelancing technology – since it is open source and characterized by its “write once run anywhere” philosophy.
Java is just a programming language and there are various technologies built around it. To mention a few popular ones – Servlets/JSP (server side scripting), Java AWT/Swing (client applications), J2ME (mobile technologies), EJB (business components) – and so on.
Nevertheless, a thorough understanding of the Java Programming Language and OOP (Object Oriented Programming) concepts are recommended to get started.
One stop shop – for all Java Tutorials
6. CMS (Wordpress, Joomla!, Drupal etc.)
Content Management Systems are the easiest way to build sophisticated web applications, in a shortest possible time frame. Another major advantage in favor of CMS is their simplicity and even a non-technical person would find it very simple to get started.
Though a CMS like Wordpress or Joomla! provides the basic features that every web application needs, there is always a need for customization based on the requirements.
Customization usually falls into one of these two categories:
- Themes – to customize the look and feel of the applications
- Extensions / Plugins – to extend the existing functionality or develop a whole new one
I have seen a good demand in the freelancing market for – Wordpress Theme / Plugin development, Joomla! Theme / Component development and Drupal module development.
Again, since most of these CMS use PHP as their base technology, an understanding of it is mandatory before working with these CMS.
Wordpress Theme Development from scratch
Wordpress Plugin Development from scratch
Crash course for Wordpress Plugin Development
Creating your first Joomla! template
Intro to Drupal
Joomla! component development is a vast topic and I would recommend you to grab a copy of this book, if you are serious! - http://www.packtpub.com/Joomla-Extensions/book
7. Microsoft .NET
Much like the Java Technology, there is a good demand for .NET based applications. Since they are object oriented and platform independent, .NET applications are suited for both commercial and non-commercial purposes.
Since I am not too much an expert with .NET, I would recommend you to visit their website for learning resources.
8. SEO and Link Building
Since this is not a purely technical topic, many programmers would not find the urge to venture into it.
But there is a good demand for quality SEO and link building experts. In short, it is all about making your site Search engine friendly and increasingly popular in the process.
Primarily the content is what that makes a site popular – but there are some optimizations one can do at the site level, to let search engines take a note of them. This is not a skill that you learn overnight! You learn the best practices, put them into use and keep improving as time goes on. So it may take a while to succeed, if you planning for these projects.
Google SEO Starter Guide [PDF]
Official Google Webmaster Blog
9. Facebook Applications
Facebook is a social networking platform. The power of Facebook is in its extensibility – providing a platform where different applications can integrate with the core Facebook application.
Provided this extensibility, the scope of applications that can be developed is almost infinite. There are already numerous applications developed for Facebook – like Twitter clients, games, calendar apps, etc. You may find projects for developing some interesting social or commercial applications on Facebook.
Facebook for Developers
You might be wondering that I never talked about XML, which is a primary communication channel for a majority of web applications.
Though you won’t be developing an application just based on XML – there will be many components that are wired using XML. So an understanding of the basics is mandatory, before you venture into web application development.
XML is a document standard. Ancillary components that can be developed around XML would include – XML generators, XML parsers, XML-Object Mapping, Validations, XSL etc.
W3Schools Tutorial for XML
Though I have shared most of the popular technologies in demand, this is definitely not an exhaustive list.
Feel free to add any missing ones as comments to this blog post.
If you found this useful, consider subscribing to Thoughts Unlimited for more such blog posts!