Iain's IT Solutions Ltd.

Iain's IT Solutions Ltd Mobile Nav Menu

Software development environments - IDEs

13-Jan-2011

I began programming by writing code in Excel VBA, then moved on to Access VBA - where I've done the bulk of my work - then on to VB.net & C# using Visual Studio - which I use for my desktop applications.

Now I've moved away from working for a company where we all have the same PCs, to building software for private clients who all have different PCs, laptops, operating systems and software installs. I've been learning PHP & JavaScript - with all the obvious advantages of web applications.

I write my PHP, MySql, JavaScript, CSS & HTML all in Notepad++ - a very handy text editor. It gives nice indenting and colour highlighting but doesn't compare to the development environments of MS Office or Visual Studio.

I love programming in PHP and love the benefits of web applications over desktop - but after writing a bunch of code in Notepad++, then doing some work in Visual studio C# - I really do miss the rich Microsoft coding environment.

Intellisense - although Notepad++ does have it - it's just not the same. I kindof understand the reasons why it's so hard to build a rich dev env for weakly typed scripting languages - I just feel so much more productive in Visual Studio. I don't waste time trying to find the typo, or the incorrect case or missing semicolon - the red underline takes my eye right to the point of the error. In my early days of JS, I was stuck for a long time wondering why “document.getElementByID()” wasn't working. It's just annoying to realise the capital D at the end should be a small d.... The issue I take with this is that I'm not having errors due to a fundamental lack of understanding of the language - it's just a D in the wrong case!

It's good to just browse intellisense items - the properties of a string for example - I can usually from intellisense figure out how to pull a substring - rather than having to Google it if I can't remember.

Parameter listing is very handy.

The debugger - giving me a list of my exceptions & line highlights rather than having to run the code to find any errors.

Stepping thru code - although I can step thru my JS in IE8, which is great, I'd so love to step thru my PHP and hover the cursor over a variable and see its value. It's such a pain to have to echo out values, and some other text so you know the echo has worked and comment out header/location page redirects so the echo actually works!

The query builder in MS Access is also very handy - adding fields and basic joins takes a fraction of the time of writing. I've tried building my own PHP/JS version of this - a web page which connects to my database and lists all tables and fields - and an interface to click fields and pick linking methods and generate the SQL - but it got too complicated - I may look into again one day.

Drag and drop user interface design. It's very satisfying to lay out a form in Visual Studio, quickly size and snap control into position, pick property attributes from dropdowns and colour everything nicely. I'm getting better all the time with laying out HTML pages and forms - but it's such a faff....!

I have looked for a dev env which can deal with all the web app languages - PHP, MySQL, JS, CSS & HTML. I've downloaded a couple of free ones, but I think I'm just used to Notepad++ now.

One could argue it's good to learn a language in a basic text editor - a nice pure coding method which gives you no help and doesn't forgive any errors, but conversely I'm here to build software to help people do their jobs - and a rich development environment helps me be more productive and deliver good code quicker....




No links allowed (to stop persistent spamming...)




Optional - enter if you want to be alerted when new comments are added