tag:blogger.com,1999:blog-207266122024-02-28T09:32:34.935-08:00Release Management<b>Build it. Release it. Manage it.</b><br>
Thoughts of a release engineerArul Jegadishhttp://www.blogger.com/profile/09689456147746872890noreply@blogger.comBlogger19125tag:blogger.com,1999:blog-20726612.post-13085957770740728022009-08-07T10:41:00.000-07:002009-08-07T10:43:22.490-07:00New home!This blog has been moved to:<div><br /></div><div><a href="http://arul-jegadish.com/release/"><b><span class="Apple-style-span" style="font-size:large;">http://arul-jegadish.com/release/</span></b></a></div><div><br /></div><div>All the old posts have been moved to the new home. I'll be publishing my new posts there.</div><div><br /></div>Arul Jegadishhttp://www.blogger.com/profile/09689456147746872890noreply@blogger.com0tag:blogger.com,1999:blog-20726612.post-87752699484520701962008-05-21T05:44:00.001-07:002008-05-21T09:31:54.074-07:00The undocumented Perforce!I was reading the book "Practical Perforce" by Laura Wingerd and was plesantly surprised when I read about the undocumented commands in Perforce!<br /><br />Yes, there are a whole lot of undocumented commands that you can use to do lot of smart operations. But the drawback is some of them are deprecated and all of them are unsupported. So use them at your own risk.<br /><br />The following command will tell you the full list of undoc commands:<br /><blockquote></blockquote><em><strong>p4 help undoc</strong></em> <blockquote></blockquote><br />Here are a few of the undoc stuff that I liked:<br /><br /><em><strong>p4 files "</strong></em><a><em><strong>//depot/...@=1234</strong></em></a><em><strong>" </strong></em> -- will give you the list of files changed by 1234<br /><em><strong>p4 changes "</strong></em><a><em><strong>//depot/...@>1234</strong></em></a><em><strong>"</strong></em> -- Will list all the <span class="blsp-spelling-error" id="SPELLING_ERROR_0">changelists</span> done after 1234. The same syntax can be used with dates as well. The quotes around the <span class="blsp-spelling-error" id="SPELLING_ERROR_1">filespec</span> is needed.<br /><br />Will try out some of these <span class="blsp-spelling-error" id="SPELLING_ERROR_2">undoc</span> stuff and document it here!Arul Jegadishhttp://www.blogger.com/profile/09689456147746872890noreply@blogger.com0tag:blogger.com,1999:blog-20726612.post-8290391077943900412008-05-21T05:36:00.000-07:002008-05-21T09:31:54.075-07:00Perforce: Get quickly to your files in P4WinIf you use P4Win as the Perforce client, then here is one keyboard shortcut that you will love.<br /><br />Copy a file path (depot path or client path) and paste it (ctrl + v) on the P4Win window and P4Win will take you directly to that file.<br /><br /><br />-- Copy the file path<br />-- Paste it (ctrl + v) on P4Win window<br />-- And navigate directly to that fileArul Jegadishhttp://www.blogger.com/profile/09689456147746872890noreply@blogger.com2tag:blogger.com,1999:blog-20726612.post-35360335897948068862007-12-16T07:28:00.000-08:002007-12-16T07:42:37.358-08:00Attending Proto.in FE 2008The stage is ready for the next edition of <a href="http://www.proto.in/proto2008">Proto.in (FE 2008)</a>, a premier event to showcase tech startups. The first edition for 2008 is on 18th and 19th Jan, 2008 in Chennai.<br /><br />I got to attend the <a href="http://jegadish.blogspot.com/search/label/proto.in">previous edition of Proto</a>, which was how I got introduced to the world of tech startups in India.<br /><br />This time around about 20 companies are expected to demo their work. As of this writing, both product nominations and participant registrations are open. Visit the <a href="http://www.proto.in/proto2008/">Proto site</a> for more details.Arul Jegadishhttp://www.blogger.com/profile/09689456147746872890noreply@blogger.com0tag:blogger.com,1999:blog-20726612.post-83916461561588051592007-12-16T07:10:00.000-08:002007-12-16T07:27:35.378-08:00Where in your org structure is Release Management?Found an interesting article that talks about this question. It's worth a read ...<br /><br /><a title="Permanent Link: Release Management - QA or engineering?" href="http://releasemanagement.wordpress.com/2006/07/27/release-management-qa-or-engineering/" rel="bookmark">Release Management - QA or engineering?</a><br /><br /><blockquote><p><em>There seems to be some debate around where in an organization Release Management really belongs. Is release management a function of engineering, or is it a function of quality assurance or quality control? A case can be made for both, or neither. </em></p><p><em><a href="http://releasemanagement.wordpress.com/2006/07/27/release-management-qa-or-engineering/">Read More >></a></em></p><em></blockquote></em><br />In the place where I currently work, the release management team is a subset of the <span class="blsp-spelling-error" id="SPELLING_ERROR_0">QA</span> team. But in my previous organization, the organization is big and the product is complex enough that we had a separate release <span class="blsp-spelling-corrected" id="SPELLING_ERROR_1">management</span> team reporting to a separate VP that took care of release management of a set of products.<br /><br />In any case, the release management team needs to be treated as a separate stake holder so as to ensure effective implementation of processes.<br /><br /><em></em>Arul Jegadishhttp://www.blogger.com/profile/09689456147746872890noreply@blogger.com0tag:blogger.com,1999:blog-20726612.post-66408526477529761162007-12-02T06:40:00.000-08:002007-12-02T07:01:43.353-08:00Release Management in WikipediaFound the following useful articles in <span class="blsp-spelling-error" id="SPELLING_ERROR_0">Wikipedia</span> that explains Release management,<br /><br /><ul><li><a href="http://en.wikipedia.org/wiki/Release_Management">Release Management</a></li><li><a href="http://en.wikipedia.org/wiki/Release_Management_method">Release Management Method</a></li></ul><p>An excerpt from <a href="http://en.wikipedia.org/wiki/Release_Management">Release management</a>:</p><blockquote><p><span style="color:#9999ff;">A Release Manager is:<br />- Facilitator – serves as a liaison between varying business units to guarantee smooth and timely delivery of software products or updates.<br />- Gatekeeper – “holds the keys” to production systems/applications and takes responsibility for their implementations.<br />- Architect – helps to identify, create and/or implement processes or products to efficiently manage the release of code.<br />- Server Application Support Engineer – help troubleshoot problems with an application (although not typically at a code level).<br />- Coordinator – utilized to coordinate disparate source trees, projects, teams and components.</span></p><p></p><p></p></blockquote>Arul Jegadishhttp://www.blogger.com/profile/09689456147746872890noreply@blogger.com0tag:blogger.com,1999:blog-20726612.post-40095014813099864262007-11-24T23:27:00.000-08:002007-12-02T06:52:44.197-08:00Video on Release ManagementFound this video on YouTube about Release Management in large free software projects. The speaker discusses his research work in this area. He focuses on time based release management.<br /><br />This is a long video (60 mins), so have some time before setting off to watch the video.<br /><br /><br /><embed src="http://www.youtube.com/v/RwpOxX_2Shw" width="425" height="373" type="application/x-shockwave-flash" wmode="transparent"></embed>Arul Jegadishhttp://www.blogger.com/profile/09689456147746872890noreply@blogger.com0tag:blogger.com,1999:blog-20726612.post-14734846255839232102007-11-18T08:31:00.000-08:002007-11-18T09:05:59.625-08:00My Take on BCB5Barcamp Bangalore (BCB5) was at IIMB on 17th and 18th of Nov, 07. My overall experience was good and much better than that of the previous event (BCB4).<br /><br /><strong>Things I liked...</strong> <ul><li>Collectives. Yes, I liked that the initiators continued with the much debated concept of collectives. Collectives give me a way to find the right audience and to subsequently network with them. It also meant that I get only the interested audience.</li><li>Better scheduling. Scheduling was much better than BCB4. The wiki based scheduling gave an overview of what to expect and the on the spot notice board scheduling told what's happening and where. </li><li>Matz! This time around the initiators ear marked a few areas in the corridors and lawns as meeting places named as D1 to D6. Mats, mattresses and pillows were arranged to make you feel comfortable. This enabled small and focused groups to get together and have an informal discussion. </li></ul><p><br /><br /><a title="Informal, but intensive discussion during BCB5 by Arul Jegadish (jegarul), on Flickr" href="http://www.flickr.com/photos/jegadish/2044070674/"><img height="346" alt="Informal, but intensive discussion during BCB5" src="http://farm3.static.flickr.com/2257/2044070674_81e928f97f.jpg" width="500" /></a><br /><br /></p><p><br /><strong>Things that could change...</strong></p><ul><li>I still believe that there could be a nominal entry fee for the participants. This might reduce the number of participants, but will pull in only the fully interested participants.</li><li>Oops.. I never heard anything about the 'open collective'. Were there any discussions? </li></ul><p>To me this looked to be a better barcamp compared to BCB5, especially regarding scheduling. I'm looking forward to the next barcamp. I'm in fact thinking about joining the organising team to get a feel of the challenges they face in bringing up this impressive event!</p><p></p>Arul Jegadishhttp://www.blogger.com/profile/09689456147746872890noreply@blogger.com1tag:blogger.com,1999:blog-20726612.post-9805514103945607312007-11-18T07:44:00.000-08:002007-11-18T08:29:54.307-08:00SPM Collective at BCB5SPM for Software Production Management.<br /><br />17th and 18th Nov were two useful days for me at Barcamp Bangalore 5 (BCB5). I had earlier proposed the collective on Software Production Management. Things went well as per the plan. On Sat morning we huddled around under the cozy shade of a tree for our discussions. The quick self introductions were followed by a brief session from me on <a href="http://jegadish.blogspot.com/2007/11/basic-software-production-management.html">basic setup for S/W production management</a>. Followed by this, Kaetan from ThoughtWorks gave a lively session on implementing continuous integration through Cruise Control. He showed us a short demo of CC.rb.<br /><br /><a href="http://www.flickr.com/photos/jegadish/2043167329/" title="SPM collective at BCB5 by Arul Jegadish (jegarul), on Flickr"><img src="http://farm3.static.flickr.com/2216/2043167329_d448657be6.jpg" width="500" height="346" alt="SPM collective at BCB5" /></a><br /><br />The end of Kaetan's session started an impromptu discussion on eXtreme Programming, especially on pair programming. The guys from <a href="http://www.railsfactory.com/">rails factory </a>chipped in with some useful contributions.<br /><br />Thanks to the folks who turned out and contributed to the discussions. It's nice to know a few people who are passionate about this field. BCB5 played as a platform to meet and network with like minded people. I'm hopeful of converting this good start to a long lasting and mutually beneficial community.<br /><br />I'm going to send a mail to all the particpants seeking ideas to form and sustain this community. If you have some inputs or if you would like to join this community, please do get in touch with me.Arul Jegadishhttp://www.blogger.com/profile/09689456147746872890noreply@blogger.com0tag:blogger.com,1999:blog-20726612.post-7441432078423578222007-11-15T09:25:00.000-08:002007-11-15T10:30:38.944-08:00A basic software production management setup - Part IIn this post I'm attempting to put together a set of suggestions for processes and tools to accomplish a basic software production management setup. This post will be the most useful for software <span class="blsp-spelling-error" id="SPELLING_ERROR_0">startups</span>. The emphasis will be to keep things simple, with less overhead and with less setup/maintenance cost.<br /><br />Also, this post is more of an outline. I'll explore each of the sub-sections in more detail in future posts.<br /><br /><span style="font-size:130%;"><strong>Software Configuration Management (<span class="blsp-spelling-error" id="SPELLING_ERROR_1">SCM</span>)</strong></span><br />Start by securing your source code. Use a Software Configuration Management (<span class="blsp-spelling-error" id="SPELLING_ERROR_2">SCM</span>) system. This might sound very preliminary, but I have seen companies where engineers store their source code just in their respective local disks. Installing and configuring a <span class="blsp-spelling-error" id="SPELLING_ERROR_3">SCM</span> tool is straight forward. But, do spend some time and think about the following before implementing your <span class="blsp-spelling-error" id="SPELLING_ERROR_4">SCM</span>,<br /><ul><li>Discuss and decide on a directory structure to store your source code. Changing of <span class="blsp-spelling-error" id="SPELLING_ERROR_5">dir</span> structure later in the game is costly</li><li>Do setup a scheduled backup of your code repository. A 10 liner script will get the job done. </li><li>Have a strategy to manage your 3<span class="blsp-spelling-error" id="SPELLING_ERROR_6">rdParty</span> libraries. Simple solution is to store all the 3<span class="blsp-spelling-error" id="SPELLING_ERROR_7">rdParty</span> libs in a separate folder and use labels or tags to use them in your various products.</li><li>Manage the 3<span class="blsp-spelling-error" id="SPELLING_ERROR_8">rdParty</span> licenses as well. Before you realise, you will have various different 3<span class="blsp-spelling-error" id="SPELLING_ERROR_9">rdParty</span> components that have different licenses and legal obligations. A simple spreadsheet will do the trick.</li></ul><p><strong>Tools</strong></p><p>There are quite a few open source and free <span class="blsp-spelling-error" id="SPELLING_ERROR_10">SCMs</span> available in the market. <span class="blsp-spelling-error" id="SPELLING_ERROR_11">CVS</span> and <a href="http://subversion.tigris.org/">Subversion </a>are two of my favorites. And my personal recommendation is Subversion for two main reasons,</p><ul><li>Subversion's branching and merging is superior (especially with merge tracking on the cards for the upcoming release)</li><li>Subversion gives a unique revision number for every check-in, which can be used to track changes to the code repository. From a defect tracking perspective, the revision number can be used to track defect fixes. The revision number can be used as a bridge between your defect tracking system and your <span class="blsp-spelling-error" id="SPELLING_ERROR_12">SCM</span></li></ul><p>If you are a medium sized organisation (Above 100 users) and have multiple product releases out in the market in many (hundreds) customer locations, then you may think about a licensed <span class="blsp-spelling-error" id="SPELLING_ERROR_13">SCM</span>. In that category <a href="http://www.perforce.com/">Perforce </a>is a winner.</p><p><br /></p><p><span style="font-size:130%;"><strong>Build Management</strong></span></p><p>Compared to other areas of s/w production management, there are less number of ready to use tools available for build management. So you might need to do some scripting to setup your build management system, for which there is a good set of scripting languages - make, (n)ANT, Maven etc. Things to note:</p><ul><li>Setup a separate machine and always build from that machine. Be able to reproduce this machine's configuration</li><li>Stage the built bits in a central read only location for the internal consumers to access</li><li>Have a mechanism to trace back to the source code. Given a build and a file name, one should be able to find the corresponding version of that file in your code repository. </li><li>Label the source once a build is complete. That will help you to know exactly what has gone into a build</li><li>Consider setting up a continuous integration system. Cruise Control is a popular choice.</li></ul><p>There are a few build tools available in the market now-a-days. One of them is <a href="http://www.kinook.com/">'Visual Build Pro'</a>. This tool serves the purpose if your build requirement is simple and straight forward. </p><p></p><p><br /></p><p>To be continued ...</p><p>Defect tracking and change management in the next post.</p><p></p>Arul Jegadishhttp://www.blogger.com/profile/09689456147746872890noreply@blogger.com2tag:blogger.com,1999:blog-20726612.post-29878339954156657362007-11-07T07:17:00.000-08:002007-11-15T10:31:04.123-08:00Video on Branching and MergingFound an useful video in <span class="blsp-spelling-error" id="SPELLING_ERROR_0">Youtube</span> regarding Branching and Merging by Laura <span class="blsp-spelling-error" id="SPELLING_ERROR_1">Wingerd</span>, author of the book 'Practical Perforce'. Interestingly she compares working with branches to driving a car!<br /><br />She has introduced the need for branching and the various branching strategies through a simple comparison between the ideal world and the real world.<br /><br />It's a rather lengthy Video (<span class="blsp-spelling-error" id="SPELLING_ERROR_2">abt</span> an hour long). Make sure you have some time before setting out to watch the video.<br /><br /><embed src="http://www.youtube.com/v/ouEHuTr4k6s&rel=" width="425" height="355" type="application/x-shockwave-flash" wmode="transparent"></embed>Arul Jegadishhttp://www.blogger.com/profile/09689456147746872890noreply@blogger.com0tag:blogger.com,1999:blog-20726612.post-53595744224853006452007-11-05T09:49:00.000-08:002007-11-15T10:29:43.130-08:00Software Production Management at Barcamp Bangalore 5<a title="Barcamp Bangalore 5 - Winter Edition" href="http://www.barcampbangalore.org/"><img src="http://barcampbangalore.org/w/images/7/71/Bcb5_bethere.png" width="400" border="0" /></a><br /><br /><span class="blsp-spelling-error" id="SPELLING_ERROR_0">Barcamp</span> Bangalore 5 is just around the corner. It's on 17<span class="blsp-spelling-error" id="SPELLING_ERROR_1">th</span> and 18<span class="blsp-spelling-error" id="SPELLING_ERROR_2">th</span> Nov at <span class="blsp-spelling-error" id="SPELLING_ERROR_3">IIMB</span>.<br /><br />Like <span class="blsp-spelling-error" id="SPELLING_ERROR_4">BCB</span>4, this <span class="blsp-spelling-error" id="SPELLING_ERROR_5">Barcamp</span> will also be around the much debated concept of collectives. This time though the initiators have refined the general guidelines for the collectives. The initiators have also put up a very nice <a href="http://barcampbangalore.org/forums/index.php">discussion board </a>to discuss collectives and other general topics.<br /><br />I have proposed the collective "<a href="http://barcampbangalore.org/wiki/BCB5_Collectives#Software_Production_Management">Software Production Management</a>". Through the collective I expect to meet like minded people and to have some useful discussions. The term "Software <span class="blsp-spelling-corrected" id="SPELLING_ERROR_6">Production</span> Management" is not often used. But I coined that as the title for the collective to bring the related areas of configuration management, build management, release management and change management under one umbrella.<br /><br /><strong>How to be part of this collective?</strong><br />If you are <span class="blsp-spelling-corrected" id="SPELLING_ERROR_7">interested</span> in this collective, you can register by posting in <a href="http://barcampbangalore.org/forums/viewtopic.php?t=24">this thread</a>.<br /><br />Apart from this I also see a lot of very interesting collectives like "Weekend Entrepreneurship", "Blogs and Blogging", "<span class="blsp-spelling-error" id="SPELLING_ERROR_8">Facebook</span>" etc. It promises to be a great <span class="blsp-spelling-error" id="SPELLING_ERROR_9">BarCamp</span>!Arul Jegadishhttp://www.blogger.com/profile/09689456147746872890noreply@blogger.com0tag:blogger.com,1999:blog-20726612.post-82643207682545289182007-10-10T10:06:00.000-07:002007-10-10T10:21:45.839-07:00DARE - Because Entrepreneurs do!DARE, the new magazine from <span class="blsp-spelling-error" id="SPELLING_ERROR_0">CyberMedia</span> has been launched and the first issue is now on the stands. DARE is aimed at the growing <span class="blsp-spelling-corrected" id="SPELLING_ERROR_1">entrepreneurial</span> energy in the country. The magazine comes with an interesting tag line - 'Because Entrepreneurs Do'!<br /><br />Got my hands on the first issue. I'm thoroughly convinced with what I have got. It'll be 30 Rs per issue.<br /><br />It'll be interesting to see how the subsequent issues will be. I hope that the excitement promised by the first issue will be <span class="blsp-spelling-corrected" id="SPELLING_ERROR_2">sustained</span>.<br /><br /><a href="http://www.indianmediaobserver.com/modules.php?name=News&file=article&sid=1061">Related Article</a>Arul Jegadishhttp://www.blogger.com/profile/09689456147746872890noreply@blogger.com0tag:blogger.com,1999:blog-20726612.post-78410823745871670662007-09-01T04:22:00.000-07:002007-09-04T02:31:41.861-07:00Got a Green Idea?If you have a <em>green</em> idea or know of someone who has one, there's good help available! By green here I refer to Eco-friendly and sustainable ideas.<br /><br />During <a href="http://jegadish.blogspot.com/2007/07/protoin.html">Proto.in</a> event I met AnilKumar Gade, an executive with New Venture India fund of CII. Confederation of Indian Industries (CII) has setup <a href="http://www.newventuresindia.org/">'New Ventures India'</a> fund a couple of years back to fund promising and sustainable <em>green</em> ideas.<br /><br />A quick glance at the <a href="http://www.newventuresindia.org/nvi/Content/list-of-companies.jsp">list of companies currently supported</a> by this fund shows some interesting ideas getting implemented. The one that caught my immediate attention was <a href="http://www.newventuresindia.org/nvi/Content/BK_Edible_Portfolio.jsp">BK Edible Innovations</a>, a company working on edible cutlery. Yeah, that means soon you will get spoons and plates that you can eat right after your favorite meal! That would save a lot of environmental waste. It'll also considerably reduce the garbage disposal challenge.<br /><br />A quote from the fund's website (<a href="http://www.newventuresindia.org/">http://www.newventuresindia.org/</a>):<br /><br /><blockquote><p><em>New Ventures supports sustainable enterprises by accelerating the transfer of capital to outstanding companies that incorporate social and environmental benefits. By providing sound investment opportunities in emerging economies, New Ventures demonstrates that investing in sustainable enterprises makes good business</em> <em>sense. </em><em><br /></p></em></blockquote>Also, they are hosting an event <a href="http://www.newventuresindia.org/nvi/Content/forum2007.jsp?eventid=1430">Investor Forum 2007 </a>in Mumbai on 16-17 Nov, 2007. It's a typical event for investor's and entrepreneurs to buy and sell green business ideas.<br /><br />For more details,<br /><br /><ul><li>Visit their website <a href="http://www.newventuresindia.org/">http://www.newventuresindia.org/</a></li><li>Contact AnilKumar at <a href="mailto:anilkumar.gade@ciionline.org">anilkumar.gade@ciionline.org</a></li></ul><p></p>Arul Jegadishhttp://www.blogger.com/profile/09689456147746872890noreply@blogger.com0tag:blogger.com,1999:blog-20726612.post-76276830412575369122007-09-01T04:12:00.000-07:002007-09-01T05:42:39.697-07:00Perforce: Changelists resulting from an integrationPerforce has a comprehensive mechanism to track branches and merges (integrations). But there's no direct way to find out the changelists resulting from the integration of a particular changelist.<br /><br />Given a changelist, P4 doesn't have a direct command that will tell you the changelist(s) resulting from 'outward' integrations. But this can be achieved through a combination of few P4 commands. The rest of this post explains that.<br /><br /><br /><strong>Steps</strong><br /><br /><strong>Step 1</strong><br />Find out the files affected by the source changelist. One way is to just describe the changelist from the UI and find out the files. The better way is to use the command <span style="font-family:courier new;">p4 fstat -e <changelist> <file spec></span>. If you are writing a script to do this then you need to use the second option. here is an example of the second option,<br /><table width=100% bgcolor="#113344"><tbody><tr><td><br /><span style="font-family:arial;">p4 fstat -e 12345 //depot/...<br /><br /><em>... depotFile //depot/current/code/Example.java</em><br />... clientFile D:\current\code\Example.java<br />... isMapped<br />... headAction edit<br />... headType text<br />... headTime 869010061<br />... headRev 10<br /><em>... headChange 12345<br /></em></span></td></tr><br /></tbody></table><br /><br /><br /><p><strong>Step 2</strong></p><p>For each of the files found from the above step, find out the relevant outward integration record. The command p4 integrated <file spec> can be used for this. Here's an example:</p><table bgcolor="#113344" width=100%><tbody><tr><td><p><br /><span style="font-family:arial;"><br />p4 integrated //depot/current/code/Example.java<br /><br />//depot/current/code/Example.java#6 - branch into //depot/release1/code/Example.java#1 </span></p><p><span style="font-family:arial;">//depot/current/code/Example.java#8 - merge from //depot/current/code/Example.java#2 </span></p><p><span style="font-family:arial;"><em>//depot/current/code/Example.java#10 - copy into //depot/current/code/Example.java#3<br /></em></p></span></td></tr><br /></tbody></table><br /><br />Find out the line(s) corresponding to the version found out in step 1. From this you will be able to find out the target file and its version. The final step is to find out the changelist through which this version was submitted<br /><br /><strong>Step 3</strong><br />Now we know the target file and it's version. Now find out the changelist through which this file was submitted using the command p4 fstat <file#version>. You need to note the value of the field "... headChange".<br /><br /><strong>Perl script</strong><br />I'm in the process of writing a Perl script to do the above. Will post it here as soon as it is available.Arul Jegadishhttp://www.blogger.com/profile/09689456147746872890noreply@blogger.com0tag:blogger.com,1999:blog-20726612.post-30559712984206333592007-08-06T08:13:00.000-07:002007-11-15T10:31:39.458-08:00BarCamp Bangalore 4<a href="http://barcampbangalore.org/wiki/Main_Page">BarCamp Bangalore 4 (BCB4)</a> happened on 28th, 29th of July at IIMB. If you are hearing the name 'BarCamp' for the first time, <a href="http://en.wikipedia.org/wiki/BarCamp">this link </a>has some basic info. <a href="http://barcamp.org/">The official BarCamp site </a>has some in depth details. In simple terms, it is an <em>unconference</em>, an ad hoc gathering of like minded and passionate people.<br /><br />This was my first BarCamp. I Had heared a lot about BarCamps and was more than keen to attend this BarCamp, especially when there were sessions on photography, cycling, startups, blogging ... and more!<br /><br /><strong>Collectives</strong><br />This BarCamp introduced the concept of collectives. Collectives are groups of people who get together around a common interest/theme/ideology. There were around 30 collectives in BCB4. I was part of the photo, bicycling and startup collectives. Some of the other prominent collectives in BCB4 were the bloggers collective, the internet collective, FOSS, UnBand collective, BangPypers...<br /><br /><strong>Bicycling Collective</strong><br />This was the highlight for me in BCB4. About 15 of us, who regularly cycle/want to cycle met and discussed various interesting topics for about two hours. Some of us took our bikes to the venue. I'll be writing a separate post on this.<br /><br /><strong>Startup Collective</strong><br />This probably was the biggest of all collectives! It was useful to hear many successful entrepreneurs talk about their experiences. I particularly liked the session from Sujai of <a href="http://www.slokatelecom.com/">Sloka Telecom</a>. He hilariously explained his hiring and compensation policies. He mentioned about an young employee who wanted to get married, but was finding it tough to get a girl as he was working for a startup! That's a strikingly true scenario in the Indian middle class society.<br /><br /><strong>Photo Collective</strong><br /><strong></strong>A bunch of enthusiastic photographers met behind the Audi irrespective of a light drizzle to discuss some good topics related to photography. <a href="http://www.flickr.com/people/lighttripper/">Vinayak </a>gave an introdcution of Bangalore Weekend Shoots Flickr group.<br /><br /><strong>Feedback</strong><br /><strong></strong>This was my first BarCamp. It lived up to my expectations! Now I know of special interest groups in my areas of interest. But there was a striking difference in the quality of dicussions between the bicycling and the startup collectives. We had some foucssed and highly participative discussions, but the Startup collective was mostly of 'conference' style sessions. One difference between these two collectives is the number of participants. It's good to have many participants, but it's more improtant to have serious participants. I would suggest to have an entry fee of about 200 to 300 INR for BarCamps, so that only the serious particpants attend. This also means that the initiators need not scout for too many sponsors.Arul Jegadishhttp://www.blogger.com/profile/09689456147746872890noreply@blogger.com0tag:blogger.com,1999:blog-20726612.post-66207596863742635752007-07-23T10:03:00.000-07:002007-07-23T11:21:22.310-07:00Proto.inThe second edition of proto.in was held on 21st and 22nd of July at IIT, Madras. <a href="http://www.proto.in/proto2007se/">Proto.in</a> was an event that brought together tech startup companies, angel investors, VCs and entrepreneurs under a single roof.<br /><br /><strong>What is proto.in, anyway?</strong><br />In simple terms, the selected tech startups are given exactly 6 minutes of stage time to demo their prototype (or completed product!) to a select gathering consisting of investors, other entrepreneurs and the press. In this second edition, 22 companies presented their work. More than 2o VC firms were present over the two days. About 300 participants witnessed the event.<br /><br />It's an ideal platform for tech startups to showcase their product, get feedback, get approached by VCs and other investors, get covered by the press, make a marketing pitch - simply, get noticed!<br /><br /><strong>What did I gain?</strong><br />I was rather lucky that I registered myself on time, otherwise I wouldn't have got a seat! Before attending the event my expectation was to meet a few established entrepreneurs, get a few essential info on startups and to give some sort of shape to the now vague dreams I have about starting and successfully running a company. I wasn't disappointed!<br /><br />The first day was full of lectures by established entrepreneurs on various topics of interest to the entrepreneurial community. In the business track, I especially liked the sessions from Sekar Vembu on 'BootStrapping' and from Ashish Gupta on 'Build to flip or last'. Under the tech track, Sanjay swamy, CEO of <a href="http://www.mchek.com/">mCheck</a>, gave a good insight into the opportunities in the mobile space in India. He pointed out that even if a mobile service can capture 1% of the user base market, they have a big market to cater to (1% of 200 million users turns out to be 2 million!). He didn't fail to pin point some of the challenges prevailing in the space.<br /><br />More than the sessions, I enjoyed the opportunity to network with lot of entrepreneurs. This is the first time I could see so many CEOs, MDs, Directors .. at the same place.<br /><br />The second day featured the main event - presentation by the selected companies. There was good representation from the Internet and web 2.0 section, closely followed by the mobile sector. Every company presented their work uniquely - some companies resorted to just PowerPoint, some demoed their product and some even choreographed a real life incident where their product would help. The company <a href="http://thinxworks.com/">Thinxworks</a>, an animation company, played a movie depicting their work.<br /><br /><br />The organising committee led by Vijay did a wonderful job! All the events started and ended at the scheduled time.<br /><br />Looking forward to the next edition of Proto...Arul Jegadishhttp://www.blogger.com/profile/09689456147746872890noreply@blogger.com0tag:blogger.com,1999:blog-20726612.post-1151062652275562212006-06-23T04:34:00.000-07:002006-10-11T09:50:06.720-07:00The role of a 'Release Engineer'In this post, I have tried to define and explain the role of a Release Engineer - an interesting but a less known role! This role is more common in software product companies compared to services companies.<br /><br />This is how monster defines the role 'Release Engineer':<br /><ul><li>Responsible for software builds and releases. </li><li>Responsible for the design and development of builds, scripts, installation procedures, and systems including source code control and issue tracking. </li><li>Works closely with a quality assurance team to ensure final version is up to organizational standards. </li><li>Requires a bachelor's degree in a related area. </li><li>Familiar with a variety of the field's concepts, practices, and procedures. </li><li>Relies on experience and judgment to plan and accomplish goals. </li><li>May lead and direct the work of others.</li></ul><p><strong></strong></p><p><strong>Skillset</strong></p><p>In addition to the above, the following is a general list of skills a Release engineer is expected to have,</p><ul><li><strong>Source control tools</strong>: Experience in atleast one source control tool like CVS, Perforce, Subversion, clearcase etc. Experience in adminstrating one of these tools is a plus.</li><li><strong>Build scripting</strong>: Fluency in any of the build scripting languages like ANT, nANT, make.</li><li><strong>General scripting</strong>: Good knowledge of a scripting language like Perl, Python, Unix/Windows scripting is preferred</li><li><strong>Defect tracking</strong>: Working experience of one defect tracking system (Bugzilla, Jira etc)</li><li>General understanding of the platform in which you work (J2EE, .Net)</li><li>Decent understanding of other basic OS concepts and protocols</li></ul><p></p><p>Moreover, one should have an eye for detail and a heart for doing some tedious work to become a competant release engineer. Well, you cannot rule out that part of a release engineer's responsibilities includes some repetetive and mundane tasks (especially if the company is big!). That's one factor that keeps many people away from this career path. But, if you are the one who likes doing tough things, then you will soon find yourself in a much uncrowded and rewarding space.</p>Arul Jegadishhttp://www.blogger.com/profile/09689456147746872890noreply@blogger.com2tag:blogger.com,1999:blog-20726612.post-1136807280436617022006-01-09T03:46:00.000-08:002006-10-09T10:21:25.640-07:00I've started blogging ....!well ... I've started to blog ....<br /><br />But why? I'll use this space to share my thoughts on my profession - Software Build/Release/Configuration Management....<br /><br />Watch out this space for articles in these areas ....Arul Jegadishhttp://www.blogger.com/profile/09689456147746872890noreply@blogger.com2