Archive for June, 2008
Jun
27
Posted under
Software development With a TFS source control system and Visual Studio setting in a development environment, there are a couple of ways to manage builds. First off, I believe in continuous integration and monitoring. In simple terms it’s basically compiling, auto unit-testing, packaging and QAing on an everyday basis while the development is on. There are many tools that help us do this, nAnt, CruiseControl.Net, TFS Teambuild, Automated Build Studio etc. Some may or may not have all the features of a complete continuous integration setup. Also while CC is focused primarily on continuous integration as a whole, ABS is focused on build and deployment. I have not used or done any research on CC, so can’t talk about it much, but I’ve heard great things about it.
Continuous monitoring is going one step further and making sure that people and processes are aware of the data, results of the build process. Compilation warnings, errors, everything there is to do with the build in a neat, human-readable concise dashboard like format. One could even consider displaying the dashboard in a central place where developers sit or interact. The information is always accessible, fresh and brings awareness to act upon.
There is a beautiful discussion on Continuous monitoring at the HanselMinutes podcast.
The Team build in TFS 2005 is basically an XML file with instructions on how to go about the build process. This can involve copying files, labeling a branch, moving files, running executable and batch files, compiling a setup script etc. The experience of creating and maintaining a Team Build is very unintuitive and unfriendly. It’s not easy, if you want to do specific and unique steps in your build process.
There is some information on MSBuild with Visual Studio 2008 over at Somasegar’s blog
That’s where Automated build studio comes in. At $349 per licensed copy it’s a steal in my opinion. It saves hours of developer effort and energy in trying to get things going. It has super easy drag and drop interface, excellent integration with Visual studio, compiles all kinds of projects, does everything you need to do with a build. It can be easily scheduled as a task to run at a given time. You can get everything up and running literally in a matter of minutes. The only thing that I still need to figure out is getting set of workitems and changesets that go in to a specific build, I think it may be possible, but I don’t know yet. So basically the TFS server wouldn’t have the knowledge directly that a build has gone in. But wait, there is a Server setup for ABS and I believe that can take care of this. So if you install it on the server where TF is running, it get’s integrated with the TF. I haven’t tried it though, so I am not sure. Check more on ABS website.
So to sum it up, I think ABS is a great way to do build and deployment and with a scheduled task and a server setup it’s a great way of managing the whole process. I had an opportunity to use ABS v4 in my project and it has loads of great features from the time I used it last, the ABS v3. It just works.
I have read that at some point Microsoft will enable a ABS like interface right inside Visual Studio. But I think it will be years before it happens, May be 2010. I don’t know.
Mean while does anyone really like TeamBuild over ABS?
Jun
23
Posted under
Software development,
Technology I believe I am inherently passionate about technology. Passionate about it to talk, listen, write and keep abreast with everything that is happening in the technosphere. I wouldn’t want to miss an event, let’s say like launching of a new OS or a nextgen device that keeps a tab on the health of your car remotely, whatever that may be. I can’t seem to want to miss anything. Some may label it as “craziness or geekiness”. And I am fine with it.
For all technology stuff, I’ve been watching Techmeme ever since it’s launch. That news aggregation site feeds the most of my tech news hungry brain. However in order to do the same for specific technologies that I play with at work, I listen to podcasts. In the beginning, I tried subscribing to all my favorite techie blogs in Google Reader and then J&K them. (J and K are keystrokes to navigate through Google Reader). But I found myself missing so many good articles and could never get caught up.
That’s when I started listening to podcasts. What a great way to feed my hunger. Awesome. I am hooked to it ever since. I can’t believe I found dotnetrocks and hanselminutes through the iTunes search bar. I mean I should have stumbled upon them first on the web. Anyway, it’s been close to 8 months now and I can’t wait to listen to the next episodes.
dotnetrocks podcast has a very nice format. It begins with Carl Franklin and Richard Campbell greeting each other and checking out on how-abouts. Then Carl dwells in to ‘better know a framework’ that introduces you to one class/method/namespace/feature of the .Net framework. Ofcourse it’s not a lesson, so you are required to go check more on it later. I’ve sometimes wondered, well can .Net do that? Then Richard reads out a listener email that he has picked. Later a guest arrives and both Carl and Richard interview him/her on the technical expertise that the guest may have. With witty and sometime hilarious conversations, it’s such a relief to go back to work and I actually have been considering work more entertaining and enjoying. Even the topic that I think I am least interested in, I do tend to gain and enjoy as I listen in. Thanks to Carl and Richard.
Carl’s pwop productions also produces DnrTv a screencast+interview, again a great format and you get to know a technology so up close and personal that you could never get out of a book, or a classroom. It’s fun. My favorite episode as yet is Mark Miller’s ‘The Science of Great UI’.
Carl also produces Scott Hanselman’s podcast Hanselminutes, which is a weekly discussion, where Scott sits with industry experts and technologists to talk about some really interesting perspectives. His shows are always mellow, easy-going and really beneficial, there’s a lot of learning that happens as you listen in.
A recent addition to my listening has been the StackOverflow podcast. This is a conversational podcast between Jeff Atwood of CodingHorror and Joel Spolsky of the uberpopular JoelOnSoftware. This is a more opinionated, very engaging discussion that gives you a smorgasboard of what these two techies are intersted in talking about. It has no set format. Also they discuss a few questions from listeners in the show. Recently ITConversations has been producing this podcast, and as I am a follower of both of their blogs, I have been listening in, since their first ever podcast was put up about 11 weeks ago.
So to sum it up, I’ve been enjoying and getting entertained by listening to these shows during my daily commute, thus keeping me upbeat when I begin my work, and also when I reach home in the evening. I definately recommend all these shows to anyone who is passionate about technology and trends.
Have a great week ahead.
Jun
20
Posted under
Software development If you’ve ever needed to ship a windows software, and have worked on a installer mechanism, you might have come across InnoSetup. Now there are a few things that go with it, to make the process of working with Inno, smoother.
1. InnoSetup compiler - required to compile the .iss scripts
2. ISTool - You can call it the IDE for innosetup, although it’s not as rich as Studio, it’s good enough
3. ISPP - InnoSetup Pre Processor, if you run preprocessor directives in your script like (#define applicationVersion “2.0.0.8“)
Actually if you look for these on the web, there are a buch of different places you get them from.
Instead I suggest get an all-in-one ISPack from the following location
Download the InnoSetup, ISTool and ISPP pack