Archive for the ‘Coding Practices’ Category

New Service and website to go with it!

I just finished a new website geared towards offering a new service. The website is called Bake it! offering Web Design Conversion.

What does that mean, well you give me your design and I will turn it into a Standards Compliant web page, it’s that simple.

Take a look, you can find it at http://www.Bakeit.ws

Posted by mnoga on February 4th, 2007 No Comments

Common Phrases used by Programmers

This one was just to funny not to say something about. If your a seasoned programmer then you should know at least some of these phrases.

Take a look at Under The Sun by My Dogs

Posted by mnoga on November 28th, 2006 1 Comment

IDE’s on the mind…

Lately I have been trying out several different IDE’s. What is an IDE, ok, it stands for Integrated Development Environment. This definition is key to picking a good IDE. I’ve asked the question “What IDE do you use” before and I’ve been asked it of myself, and I have noticed that lot’s of people use this as a lead in to bash some IDE’s and promote others. No big deal, every one has their favorite and I’m cool with that.

My problem is with the people that say “Stay away from ones like Dreamweaver or Eclipse their too bloated and resource intensive, I use Notepad (or insert what ever text editor you want)” Other will say “What do you need an IDE for all you need is a text editor, that’s what real programmers use”

These kinds of remarks bother me to no end, because Notepad and the other TEXT EDITORS out there like it are NOT IDE’s!!! And what exactly is wrong with using an IDE. Why spend more time and energy doing every little thing by hand, don’t get me wrong I firmly believe to be a good programmer you should know how to do it all by hand. Believe me when I tell you there will be times when you won’t have access to your IDE and still need to make a change or times when starting up the IDE just is not worth it when you only have a little change to do. But what’s wrong with features like intellisence and code highlighting that truly cut back on development time.

An IDE is more than just an app to code in; it offers other really helpful features, like Project Management, Debugging and Version control. And I have not seen one text editor yet that has good project management built in. And no, being able to work on the live server through FTP as though it was a local drive does not count. Now it is true that some Text editor have some of these features built in, like FTP or Version control, but they do not have all of them and non as feature rich as an IDE.

Personally I think Dreamweaver gets a really bad rap and it doesn’t deserve it. I’ve used it quite a lot in the past for HTML, Cold Fusion or PHP (these are the specific languages I have used it with, there may be more), it performs really well. Especially the new version with Code Folding and background file transfers. The project management in it is impressive as well, just the built in FTP alone makes me love it. I don’t know of any other software out there weather it be a stand alone FTP app or another IDE that has the ability to let you choose a file on your local drive no matter how deep the directory it sits in is, and upload the file with out forcing you to first navigate to the remote directory it needs to go to. Basically it maintains directory structure for you so you can simply upload the file you’re working on really easily and not worry about it going to the wrong remote directory. If anyone knows of another app that does this PLEASE let me know what it is.

I have also been using Eclipse with the PHPEclipse plug-in and the ZendIDE plug-in, and Zend Studio. Now Zend studio is nice and the debugger in it works really well, but it is a PHP only IDE, and to really use all of its features you have to have some software installed on the server as well. Eclipse on the other hand is amazing, it is an Open source Application built in Java, so the only big down side is that you have to have Java runtime environment (JRE) installed to use it. But most computers come with it preinstalled and if you happened to have one that does not have it already you can download it for free. Now to the good stuff, Eclipse has a great plug-in architecture. There is tons of free Open Source plug-ins out there, if you look, you will find one that does what you need. There a plug-ins for SVN, CSS, XML, Web Services, PHP, Cold Fusion, Ruby, Ruby on Rails, Python the list goes on and on. And if you’re a Java deloper you can just build your own.

The verdict is still out on which IDE I will end up using, but I’m leaning toward Eclipse, here are some of the main reasons;

·        It’s Open Source (basically it’s free)

·        Activly being worked on and inhanced

·        Great plug-in system with tons of free plug-ins

·        It’s Java, so by nature it is platform independed, that means it works on Mac OS X, Linux and Windows

I’m still open to suggestions, so if you use an IDE (not a text editor) feel free to tell me all about. Coments are open!!!

Posted by mnoga on August 11th, 2006 No Comments

Do you do “Code Review”?

After working for small start-ups most of my career, I find myself now working for a larger public company. Rather than being the Jack of All Trades on a project I am but one developer in a team. One practice that I have come to really appreciate while being part of this team is Code Reviews, and I think they have a real place in every developers life, weather you are a lone developer or part of a team.

A code Review is a time when developers meet up to review each others code, the key here is to remember that it is not necessarily to look for bugs but to share ideas and thought on coding practices and strategies. I was quite taken back the first time I got a meeting request for a code review, I was annoyed (to say the least) about the thought of someone else critiquing my code. But by the end of that first code review I had changed my mind completely on the idea of Code Reviews, and I think it is something that can really benefit everyone who does anything from HTML and CSS to back end programming weather it be C, Ruby, Python or PHP.

Code reviews can get developers involved in different aspects of development than they’re used to. Team members may be so heads down with one part of the application that they overlook a simple solution that is obvious to someone not as involved. Sometimes, two team members working on similar modules discover that they can share more code than they previously thought. This helps reduce redundancy and keeps the team educated about what everyone is doing.

Other benefits to code reviews are encouraging consistent coding standards and to help ensure that everyone is on the same page. Coding standards may not seem that important, but cleaner code makes it easier for someone else to come in and start working with it which is great in Open Source Projects. Additionally, coding standards can help prevent common logic errors or other simple mistakes.

These later points really come in to play for individual Developers, but the single biggest benefit of code reviews is the opportunity for education. Senior developers can pass their wisdom and insight to junior developers. Juniors can offer senior coders unbiased and fresh ideas overlooked by someone more set in their ways.

To prepare for the Code Review you send out your code to all other participants at least 24 hours before the Code Review to give them time to look it over and make notes. Print outs of the Code will really help, just make sure you print it with line numbers so everyone can stay on the same page (err, line number :-)) Always remember that you are reviewing the code not the Developer, you have to show respect for the Developer even if you do not agree with something he may have coded.

Posted by mnoga on July 24th, 2006 No Comments