Blog of Gabor Szabo http://szabgab.com Gabor Szabo about Perl, automated testing, dynamic languages and everyting else en-us Copyright 2002-2010, Gabor Szabo szabgab@gmail.com 1901-01-01T00:00+00:00 1 hourly Perl for Windows statistics http://szabgab.com/blog/2010/02/1265247260.html <p> <a href="http://ali.as/">Adam Kennedy</a> pointed me to the <a href="http://code.google.com/p/strawberry-perl/downloads/list?can=1&q=&sort=uploaded&colspec=Filename%20Summary%20Uploaded%20Size%20DownloadCount">download count of Strawberry Perl for Windows</a>. this shows that in the last 3 months there were approximately 54K downloads of 5.10.x and 4.5K downloads of 5.8.x That would be about 650 downloads a day. </p> <p> Back on 7/7/2007 Jan Dubois <a href="http://aspn.activestate.com/ASPN/Mail/Message/perl5-porters/3521207">mentioned</a> that <a href="http://www.activestate.com/">ActiveState</a> has more than 4,500 downloads of ActivePerl 5.8.x per day for Windows and more than 1,000 downloads of ActivePerl 5.6.1 per day. </p> <p> Unfortunatelly I don't have newer numbers from ActiveState but it would be interesting to see how have the numbers changed? Also it would be nice if we had numbers from the other Perl distributions for Windows. </p> Gabor Szabo 2010-02-03T17:34:20+00:00 Perl, Windows, Activestate, Strawberry Perl Showing Perl on non-Perl conferences, getting money from TPF for swag http://szabgab.com/blog/2010/02/1265137032.html <p> On this weekend I'll be on <a href="http://www.fosdem.org/">FOSDEM</a> along with several other Perl Mongers. In addition to just trying to enjoy the talks we'll be promoting Perl. I am really happy that <a href="http://www.perlfoundation.org/">The Perl Foundation</a> was ready to provide us with $500 to buy conference swag we can give away. </p> <p> Similarry, a month from now we will be present at <a href="http://www.cebit.de/">CeBIT</a> in Hannover, Germany where we will have a booth to promote Perl and Perl based projects. I've just heard from <a href="http://martian.org/karen/">Karen Pauley</a> that TPF agreed to provide us another $500 for further materials to give away on CeBIT. </p> <p> This is awesome and this probably means that if you are ready to talk to people on non-perl related events telling them about Perl <b>you could also get some money from TPF</b> in order to have some hard material to give away. </p> <p> For FOSDEM we are preparing some <a href="http://www.flickr.com/photos/hfb/56871343/">round tuits</a> and a postcard listing the Perl events in Europe that will take place in the coming months. </p> <p> For CeBIT we are also preparing some further marketing materials - more business oriented - that we will be able to hand out. </p> <p> There are further ideas to prepare various fun promotional materials one can give away during a chat with a fellow developer and we have also discussed that we should have a Linux liveCD full of Perl applications ready to be used by anyone. (Also include Windows binaries in the form of Strawberry Perl for those using Windows) </p> <p> Of course almost none of the the above is my work. There are several people involved in the preparation: <a href="http://www.RSandsConsulting.com">Rich Sands</a> organzied the tuits and the postcards for FOSDEM, <a href="http://use.perl.org/~sjn/journal/">Salve J. Nilsen</a> is working and on community intro cards, <a href="http://reneeb-perlblog.blogspot.com/">Renee Backer</a> is working hard on the materials for CeBIT just to thank a few of them. </p> <p> We are also expecting some help from the <a href="http://www.enlightenedperl.org/">Enlightend Perl Organization (EPO)</a> as they are preparing beer-mats to give away. </p> <p> <h2>Getting involved</h2> </p> <p> Most of the conversation about this is done on the events mailing list and some data is collected on the TPF wiki. If you would like to help in preparing the materials or if you'd are planning to attend a non-perl event and would like to have some fun or business oriented material to give away, please join us on the events mailing list to discuss the details. You can find information on the <a href="http://www.perlfoundation.org/perl5/index.cgi?events">TPF wiki</a>. </p> Gabor Szabo 2010-02-02T10:57:12+00:00 Perl, FOSDEM, CeBIT, TPF, EPO, conferences, marketing Test Automation using Perl classes http://szabgab.com/blog/2010/02/1265027318.html <p> The conference season is warming up and so I'll start offering my <a href="http://szabgab.com/perl_in_test_automation.html">Test Automation using Perl</a> training class so I can have an excuse to go to the workshops and conferences. Here is the schedule: </p> <p> <ul> <li>March 8-11, Berlin, Germany, after <a href="http://www.cebit.de/">CeBIT</a> where we have a <a href="http://www.perlfoundation.org/perl5/index.cgi?events">Perl booth</a></li> <li>March 15-18, Tel Aviv, Israel</li> <li>Apr 13-16 Vienna, Austria, right after the <a href="http://2010.qa-hackathon.org/qa2010/">QA Hackathon</a></li> <li>May 11-14, Stockholm, Sweden, (no workshop here but I cannot make it to NPW in Rekyavik on 1-2/May)</li> <li>June 1-4, Stuttgart, Germany, just before the <a href="http://conferences.yapceurope.org/gpw2010/">German Perl Workshop</a></li> <li>June 15-18, Columbus, Ohio, USA, the week before <a href="http://www.yapc2010.com/">YAPC::NA</a></li> </ul> </p> <p> The first one in Berlin is a bit tight in the schedule now but I hope there will be enough people interested to warrant opening the class. </p> <p> The class is 4 days long. Details can be found here: <a href="http://szabgab.com/perl_in_test_automation.html">Test Automation using Perl</a>. For pricing please <a href="http://szabgab.com/contact.html">contact me</a> directly via e-mail. </p> <p> Related announcement <a href="http://perl-nachrichten.de/index.cgi/details/648">in German</a> </p> Gabor Szabo 2010-02-01T04:28:38+00:00 Perl, testing, QA, training Padre 0.55 Stand alone for Linux based on perl 5.11.4 released http://szabgab.com/blog/2010/01/1264080571.html <p> <a href="http://rjbs.manxome.org/">Ricardo Signes</a> (RJBS) has just <a href="http://rjbs.manxome.org/rubric/entry/1814">announced the release of perl 5.11.4</a>, the latest development version on the way to perl 5.12. Of much less significane but the Padre team has also released version 0.55 of Padre, you know, the Perl IDE. You can read about it in <a href="http://perlwannabe.vox.com/library/post/padre-055-released.html">the announcement of Peter Lavender</a>. </p> <p> In order to make it easier for people to try those I built a new experimental version of the Stand Alone Padre for Linux. </p> <p> It contains </p> <p> <ul> <li>perl 5.11.4</li> <li>Padre 0.55</li> <li>Padre::Plugin::PerlTidy</li> <li>Padre::Plugin::PerlCritic</li> <li>Padre::Plugin::Plack</li> </ul> </p> <p> During the build I encountered only one issue. A line in Pod::POM generates a warning about defined %hash being deprecated. As <a href="http://cpan.uwinnipeg.ca/dist/Parse-ErrorString-Perl">Parse::ErrorString::Perl</a>, one of the dependencies of Padre is checking for errors using <a href="http://cpan.uwinnipeg.ca/dist/Test-NoWarnings">Test::NoWarnings</a>, this module now fails to build. I had to manually patch Pod::POM in order to allow the installation of Parse::ErrorString::Perl. </p> <p> In additon two major plugins of Padre failed to install: </p> <p> <a href="http://cpan.uwinnipeg.ca/dist/Padre-Plugin-Perl6">Padre::Plugin::Perl6</a> has a deep dependency on <a href="http://cpan.uwinnipeg.ca/dist/YAML-LibYAML">YAML::LibYAML</a> which fails and <a href="http://cpan.uwinnipeg.ca/dist/Padre-Plugin-Catalyst">Padre::Plugin::Catalyst</a> depends on <a href="http://cpan.uwinnipeg.ca/dist/Devel-Caller">Devel::Caller</a> which currently fails on perl 5.11.4. </p> <p> If you'd like to try it download <a href="http://perlide.org/download/binary/perl-5.11.4-xl-0.03.tar.bz2">perl-5.11.4-xl-0.03.tar.bz2</a> (29,804,273 bytes). Unzip it using </p> <pre> tar xjf perl-5.11.4-xl-0.03.tar.bz2 </pre> <p> and run the padre.sh: </p> <pre> ./perl-5.11.4-xl-0.03/perl/bin/padre.sh </pre> <p> Enjoy and report any issues! </p> Gabor Szabo 2010-01-21T05:29:31+00:00 Padre, Perl, Linux, IDE Working with upstream - installing Perl modules from CPAN http://szabgab.com/blog/2010/01/1263996969.html <p> On <a href="http://www.fosdem.org/2010/">FOSDEM</a> there is going to be a <a href="http://www.fosdem.org/2010/schedule/devrooms/distributions">Linux distribution mini-conference</a> where I am going to give a talk about <a href="http://www.fosdem.org/2010/schedule/events/dist_perl_cpan">Packaging perl and CPAN modules</a> </p> <p> I gave an improvised talk about the subject yesterday in front of the <a href="http://rehovot.pm.org/">Rehovot Perl Mongers</a>. Now I am going to try to summarize that talk and further collect my thoughts on the subject. Your comments are most welcome! </p> <p> <h2>The problem</h2> </p> <p> When a user needs to install a Perl module from CPAN she has several choices based on the operating system and the perl distribution she is using. A usual case is that her company is using Fedora 9 or some other several years old Linux distribution. She now needs to insall various modules. Checking the rpms available in the official Fedora distribution she sees that most of the modules she needs are not available. (BTW I am using Fedora here as an example, this would be basically the same with any other Linux distribution.) </p> <p> Her choices are now </p> <p> <ol> <li>Find an rpm of the CPAN package(s) somewhere else</li> <li>Install using the CPAN client (or manually) into the system</li> <li>Install using the CPAN client (or manually) into a private directory (with or without the help of local::lib)</li> <li>Build her own rpm from the CPAN package</li> <li>Open a ticket on the Fedora bug tracker that she needs this module</li> </ol> </p> <p> As far as I know the standard recommendation of Fedora and Debian developers is to always use the packages that come with the distribution. But that can't be done in this case. </p> <p> <h2>How many CPAN packages are available in the distribution?</h2> </p> <p> I don't have up-to-date data but two years ago I created a <a href="http://szabgab.com/distributions/">report on the distribution of CPAN modules</a> via various downstream distributors. Back in May 2007 there were 12,422 packages on CPAN. Debian stable had 971 and the latest Ubuntu had 1,007. Even FreeBSD had only 2,594 packages.(The numbers for Fedora were probably incorrect on that report but as far as I know they were always lower than those of Debian.) </p> <p> That is, <b>less than 10% packaged for Debian and Ubuntu</b>. A lot less for other distributions. </p> <p> Today there are 19,500 distributions on CPAN and I don't know the number of packaged modules in the various distros but I doubt they had increased the percentage they cover. </p> <p> While we know there are many packages on CPAN that are broken or useless or both I think we can assume that a much larger percentage is actually useful. Maybe not for the general public of programmers but in niche areas. </p> <p> This means that in most cases <b>people will have to find alternative ways</b> to install Perl modules from CPAN. </p> <p> I am not sure what the Fedora developers would suggest in such situation but I think they would suggest 5 and not recommend any of the 1-4 options above. While I am not a speaker of the Perl community I think people from that group would probably suggest one of those four and tell you to forget about 5. </p> <p> Frankly I think most of the people - especially from the industry would never open a request to add a package to Fedora. For one thing they are trained that they should not talk to the supplier as that will charge money or that they have to go through their own boss to do this. They are also educated - by the commercial vendors - that it does not help much to ask for any bug fix or additional feature. Most likely the vendor won't do it. Neither of these are true for Debian or Fedora or for the other community based distributions but most of the people in the industry are probably not aware of that. </p> <p> <h2>Why so few?</h2> </p> <p> When I ask the distributors why are there so - relatively - few packages in their distributions they usually give two reasons. </p> <p> <ol> <li>Lack of volunteers to add the packages and then maintain them</li> <li>No one asks for the packages</li> </ol> </p> <p> The first one could be improved by either reducing the time needed to (re)package a CPAN distribution or by increasing the number of volunteers. </p> <p> Reducing the time needed could be done by further automation of the packaging process and better integration between te CPAN toolchain an the packaging systems. For this the CPAN Authors community and the more general Perl community needs to understand <b>what are the time consuming parts of the packaging process</b> and see if we can solve those issues already before they reach the downstream distributors. </p> <p> One such issue we discussed earlier was the clear licensing of each file distributed in the package. We need to further discuss the issues and give that as a feedback to the CPAN authors. </p> <p> Regarding the lack of volunteers. I am not sure I have any idea how help that but maybe giving a talk on how and why to become a Debian/Fedora/Mandriva/SuSE/etc packager on some of the <a href="http://www.perl.org/events.html">Perl Events</a> such as the Perl Monger meetings, Perl Workshops and YAPCs will yield some result. </p> <p> As to the lack of request to include packages. I already described two - probably invalid but nevertheless existing reasons why people won't request the additional packages. </p> <p> There is also a valid reason though: <b>It won't help them.</b> Even if they open a ticket and even if the Fedora Perl packaging team adds that package to Rawhide immediatelly that will go into Fedora 13 or whatever the next version will be. It won't help on the Fedora 9 she has in production <b>NOW</b>. </p> <p> So I don't expect many of them to open requests. </p> <p> <h2>What about Windows?</h2> </p> <p> While this is a preparation for FOSDEM I would like to look at Perl and CPAN on other operating systems. </p> <p> On Windows people have 2 major choices to use Perl native: </p> <p> <a href="http://www.activestate.com/">Active Perl</a> and <a href="http://www.strawberryperl.com/">Strawberry Perl for Windows</a>. </p> <p> ActiveState provides a set of binary repackaged versions of the CPAN modules. In a way it is very similar to what the Linux distributions do except that their build and repackaging system is totally automatic. In that report from 2007 we can see that ActiveState provided 6,370 CPAN packages for Windows. Roughly 50% of the total packages. In addition there are third party packagers who build ppm packages for Windows. <a href="http://kobesearch.cpan.org/">Kobesearch</a> helps finding those. </p> <p> Strawberry Perl on the other hand is using the CPAN client with a default configuration making it very easy if time consuming to install any CPAN module from source. At least those that don't have external dependencies. </p> <p> <h2>The frustration to use the CPAN client</h2> </p> <p> While many members of the Perl community are satisfied with the way the CPAN clien(s) work when you talk to people who are <i>just users</i> you are suddenly flooded with complaints. </p> <p> For one, the CPAN client is not configured on the Linux distributions. When I run it for the first time it asks me all kinds of questions. Most of them could be answered automatically but I think actually all of them could be preconfigured. Once that is done later on once in a while further configuration is needed. (e.g. I think after installing Module::Build). </p> <p> Some of the packages have dependencies outside of CPAN. In some cases this is solved by an Alien package on CPAN which - I guess - makes it further difficult to package the modules downstream as they might already have that dependency included in another package. <a href="http://cpan.uwinnipeg.ca/dist/Alien-wxWidgtes">Alien::wxWidgtes</a> solves this issue by being able to work with the already installed wxWidgets library and install its own version only if necessary. I still wonder if this causes extra headaches to the packager or not? </p> <p> Then there is the question of recursive installation. I agreee with the distributors that the preferred way to install a CPAN package would be via their installation tool using their repositories but I also need to install packages not available from their repository. So what if I am installing package A that is not in the Fedora repository that depends on package B that is? I won't check this manually but I'd prefer to get B from Fedora and install only A via the CPAN client. Once I am done, I'd like to have a report telling me which packages were installed from Fedora and which directly from CPAN so I can easily send a request to the Fedora developers. </p> <p> I read there are some improvements in the CPAN client in this area. I hope we will see full integration with the downstram packagers including the above multi-sourceing. </p> <p> <h2>What can be done?</h2> </p> <p> There are several ways to reduce the frustration of our end-users and make our life simple as well. </p> <p> I'd like to restart the effort to get information from the downstream packagers and create reports that can be easly used by the CPAN authors and the users. That would include the names of all the CPAN packages distributed by Fedora along with version number, number of patches, number of open bugs and other information if available. </p> <p> The very same data could be used to build an add-on to CPAN.pm to be able to install either from CPAN or from the rpm/deb repositories in a recursive way. </p> <p> I'd like to hear what are the most time consuming problems the downstram packagers face and what would be their suggestion to solve those issues? </p> <p> <h2>Conclusion</h2> </p> <p> There is no conclusion. I am looking for feedback from both CPAN authors, packagers and "just plain users". How could we improve the whole process of getting this code work on your system? </p> Gabor Szabo 2010-01-20T06:16:09+00:00 Perl, CPAN, packaging, distribution, Linux, Debian, Mandriva, Fedora, ActivePerl, Strawberry Perl FPGA Board Integration - using Perl - Rehovot Perl Mongers http://szabgab.com/blog/2010/01/1263972920.html <p> Last night we had the <a href="http://rehovot.pm.org/">monthly Perl Mongers meeting in Rehovot</a>. This time the number of people was lower - we were 7 on the meeting. In the first part <a href="http://il.linkedin.com/pub/lary-ecker/0/972/826">Lary Ecker</a> gave a presentation on the tool he developed a couple of years ago. In short he avoided a 70,000 USD purchase by investing partial development time of two people for two months. This tool also allows the engineers in his company to do the integration work in a matter of hours with an automated tool instead of two weeks of manual integration work which is very error prone. </p> <p> You can read a bit more about this on the <a href="http://rehovot.pm.org/meetings.html">announcement page of the Rehovot Perl Mongers</a> and you can also contact Lary via the mailing list of the <a href="http://perl.org.il/">Israeli Perl Mongers</a> or via his LinkedIn account. </p> <p> During the break while consuming some of the refreshment we talked about sorting and the sorting function in Perl even mentioning the <a href="http://en.wikipedia.org/wiki/Schwartzian_transform">Schwartzian Transformation</a>. </p> <p> <a href="http://www.linkedin.com/in/hadarleviaharoni">Hadar</a> asked if it possible - or logical - to have two different transformation function in a sort function. If not then why do we need to write it twice. E.g. why do we need two write <i>length</i> twice in the following statement? </p> <pre> @sorted_by_length = sort { length $a &lt;=&gt; length $b } @words </pre> <p> I think the point is that having some kind of statement like this: </p> <pre> sort { length, '&lt;=&gt;' } @words </pre> <p> would be too make the single condition too specialized. We still could not express statement like this in a more simple way: </p> <pre> @sorted_by_length_and_by_ascii = sort { length $a &lt;=&gt; length $b or $a cmp $b } @words </pre> <p> BTW Hadar promised to look into <a href="http://padre.perlide.org/">Padre</a> and <a href="http://pdl.perl.org/">PDL development</a> a bit but then after her Matlab and PDL talks on the previous two meetings she already got a freelance work so she did not have the time. Pointing this out just so you can it pays of to give talks on Perl Monger meetings... </p> <p> During the sorting discussion <a href="http://il.linkedin.com/pub/amit-aronovitch/1/2ba/42b">Amit Aronovitch</a>, our resident representative of Python and Matlab asked if Perl does not have a function to return the indexes of the elements as Python has. Apparently I misunderstood it as I have not found any such function in Python. Matlab has that feature and PDL too: </p> <pre> perldl&gt; $x = pdl(6, 4, 8); perldl&gt; p $x [6 4 8] perldl&gt; p $x-&gt;qsort [4 6 8] perldl&gt; p $x-&gt;qsorti [1 0 2] </pre> <p> Though this will work on numbers only. </p> <p> In pure perl I'd just sort the indexes: </p> <pre> @words = qw(b a c); @sorted = sort { $words[$a] cmp $words[$b] } 0..@words-1 print "@sorted"; # 1 0 2 </pre> <p> After the break I offered 3 talks. </p> <p> A 15 minute talk on how to create an open source project based on my experience with Padre that I am going to give on FOSDEM. </p> <p> A talk about packaging and installing CPAN modules by downstream distributors (e.g. Linux distributions). This is in preparation to the 45 minute talk I am going to present on FOSDEM. </p> <p> The last suggestion was talking about Web development and the development of <a href="http://cpanforum.com/">CPAN::Forum</a>. </p> <p> I am going to describe my talk in a bit more detail in the next post but for now I think this is enough. </p> <p> See you next month on the meeting of the <a href="http://rehovot.pm.org/">Rehovot Perl Mongers</a> </p> Gabor Szabo 2010-01-19T23:35:20+00:00 Perl, FPGA, Altera, Xilinx, Mentor, Python, Matlab Use case for Strawberry Perl for Windows http://szabgab.com/blog/2010/01/1263492546.html <p> Yesterday someone called me for whom I did some work 7 years ago that he is now at a new company and need some quick Perl script written. A 2 days long work. As I was just heading home from a conference and I was close to their office we decided I go over so we can talk about it. </p> <p> They have a system that provides its results in a CSV file but they have a client that needed the result in an XML file with some extra processing. </p> <p> So the project involved processing a CSV file and based on a small XML configuration file the script was supposed to generate an XML output file. </p> <p> As the system of the client runs on Windows this had to work there. </p> <p> After looking at the actual project we decided I'll start to work on it immediately at their offices. </p> <p> They put me in front of a Windows machine. I downloaded and installed the <a href="http://padre.perlide.org/">Stand Alone Padre editor</a> and had almost everything I needed. As it has a version of <a href="http://www.strawberryperl.com/">Strawberry Perl for Windows</a> underneath it already had <a href="http://cpan.uwinnipeg.ca/dist/XML-LibXML">XML::LibXML</a> for XML processing. </p> <p> I tried to use it in order to process the configuration file but I have never used that module and I felt it would be faster to install and use <a href="http://cpan.uwinnipeg.ca/dist/XML-Simple">XML::Simple</a> for reading the small configuration file. The already configured cpan client allowed me to type </p> <pre> c:&gt; cpan XML::Simple </pre> <p> and after a few seconds I already had the module. When I got to the point of processing the CSV file I probably could get away with a simple split() statement on every row but I did not want to take the risk of having a field with quotation marks and a comma inside a value breaking the code. So I opted for [dits://Text::CSV_XS]. I had to install it but it was easy: </p> <pre> c:&gt; cpan Text::CSV_XS </pre> <p> After about 5 hours total work including the initial discussion and finding a computer for me that took about 2 hours I was done with the script. </p> <p> Then comes <b>the hard part</b>. </p> <p> The actual production system does not have access to the Internet so one cannot simply use the cpan client. They could use a VPN to copy files to the machine just could not let the cpan client fetch the modules. </p> <p> Luckily the solution was not difficult. I told them to copy Strawberry Perl to the system and the source code version (.tag.gz files) of the two modules to the production machine. After installing Strawberry Perl they could use </p> <pre> c:&gt; pip Text-CSV_XS-0.70.tgz </pre> <p> to install the module. </p> <p> Of course I was lucky as there were only two extra modules I needed and neither of them had dependencies that Strawberry did not have. In a more complex case I might need several other modules and as the person who will install this on the target system does not know any Perl s/he will only feel it as an unnecessary complex installation. </p> <p> <h2>Solutions</h2> </p> <p> <b>A</b> </p> <p> It would be nice if there was a simple way to build a package from this. That could be the planned <b>Strawberry Perl Professional</b> that will include many other CPAN modules reducing the chance that I'll need extra modules. </p> <p> <b>B</b> </p> <p> It could be a way to build the MSI installer based on a released version of Strawberry Perl and several modules from CPAN. This should be very easy that does not need any extra things beyond Strawberry Perl and the specific extra modules. </p> <p> <b>C</b> </p> <p> It could be taking the Strawberry Perl MSI package and the source versions of the required extra modules and zipping them together. On the target system the sysadmin could </p> <p> <ol> <li>unzip the file</li> <li>install Strawberry using the .MSI package</li> <li>Run a script that will install the extra modules that were supplied with the package</li> </ol> </p> <p> The last item needs some thinking so the script will either make sure that the dependencies are installed first or will let the user configure the local directory holding the extra files as the cpan server where pip needs to look for dependencies. </p> <p> Thinking about this, this might be built by using <a href="http://cpan.uwinnipeg.ca/dist/CPAN-Mini">CPAN::Mini</a> we just need to configure the cpan client to look there first. </p> Gabor Szabo 2010-01-14T10:09:06+00:00 Perl, Windows, Strawberry Perl, Padre, XML, CSV Would you like that people at FOSDEM will hear about your Perl project? http://szabgab.com/blog/2010/01/1263326726.html <p> <a href="http://www.fosdem.org/2010/">FOSDEM</a> will take place in less than a month and the Perl stand is still waiting to be filled with interesting projects. I'am going to be at FOSDEM and I am going to give two talks. One of is 15 minute long lightning talk about <a href="http://padre.perlide.org/">Padre, the Perl IDE</a> under the title <a href="http://www.fosdem.org/2010/schedule/events/padre_the_perl_ide">Building an open source team, getting the project to users against the odds</a>. </p> <p> The other one is going to be in the distribution mini-conference about CPAN, packaging on CPAN and how CPAN authors and downstream packagers of the distributions (e.g. Debian, Ubuntu, Mandriva, Fedora, SuSE, etc...) can interact better. For this second talk I have 45 minutes. </p> <p> So when people will come to the <a href="http://www.fosdem.org/2010/stands">Perl stand</a> Padre will be represented quite well. What about your project? Will you come to FOSDEM to show it? Is there anyone in your project who might be coming and could show it? </p> <p> Even if none of the project members will come, the people who are going to be at the Perl stand will be able to show your project if you help us prepare the material. You don't have much time though as I am going to be off-line the last week of January so basically you have 10 days now to get the initial material ready. </p> <p> What we will need is a tool we can use to demonstrate your project on our notebooks. We will need and easy way to install it - maybe its own live CD, maybe adding it to the <a href="http://sourceforge.net/projects/perl-appliances/">live DVD</a> Thomas Fahle created. </p> <p> Remember there are going to be some 3-4000 people attending FOSDEM, but thet are not Perl programmers. I am not sure what exactly to expect. I am sure people will ask questions about Perl 6 and they will want to know if Perl can be used to create web applications. So the material should be ineteresting enough for them to look at your project or to look at Perl and try to get them start to use it. </p> <p> So, if you'd like some publicity to you project. Start talking to me now about it! </p> Gabor Szabo 2010-01-12T12:05:26+00:00 Perl, FOSDEM, Padre When will Padre move to Git? http://szabgab.com/blog/2010/01/1262751048.html <p> Yesterday while I was not watching the IRC channel the issue of moving to Git came up again. You can see the <a href="http://irclog.perlgeek.de/padre/2010-01-05#i_1886659">log of the conversation</a>. I know many Perl projects moved to Git, including the Perl 5 Porters. Maybe it is time for Padre too, to move? </p> <p> I have to tell you people I really am getting fed up with the Git fanboyism. This time it wasn't so bad - probably because I did not see it live happening - but for a long time I wanted to write about this already. Git might have a huge technical advantage over Subversion and as we are told it also has an enormous social advantage but if I am pushed (no pun intended) to use Git then I feel very uneasy. To say the least. </p> <p> I don't know what is your reaction to sales people that are trying to push you into buying things. Usually I kick them out even if I need that thing and will try to buy somewhere else. That means more time invested and sometimes even higher price. I know it is not rational but rather emotional. I am ok with that. I know most of the people reading this will make only rational decisions after carfully weighting all the technical aspects (e.g. of Git and Subversion) but I let emotions get involve as well. </p> <p> I allow myself doing this as I learned in my marketing studies that most people actually make their decisions based on emotions and then rationalize them. As we were told, it is not surprising that a Porsche comes with a huge manual. After all you don't buy it to pick up chiks. You buy it because of its technical superiority. Or so you tell your friends and yourself! </p> <p> Well, maybe it was something else we learned. I don't know. I almost failed that class. </p> <p> Anyway back to </p> <p> <h2>Padre and Git</h2> </p> <p> I have been using Subversion for many many years now, since before it was release as 1.0 and I have been using Git for some time. For a long time I did not get anything about Git. The first thing I liked about it was actually Github. Specifically the ease I could create one-off patches. Even more so to create several small patches to other projects. </p> <p> If a project is using Subversion I can pull it repository make a small change and send the patch. That's not bad but it requires an off-the-band communication via e-mail or nopaste or putting it in the bug tracking system or some other way to send the patch. The author also has to deal with pulling the patch from that place - and the fact that these places vary already create a head-ache - in short it is more complex than I'd want. </p> <p> It is much worse in case I want to make several small patches that might depend on each other. I can't easily do it with subversion. I could have done it with SVK or Git, creating a local branch of the remote SVN repository, making several commits locally and then sending the patches one by one. </p> <p> The other way would be to ask the reposioty owner to give me a commit bit. Even if s/he gives out commit bits easily as happened with Pugs and as happens with Padre it still takes some time to find the person who can give that commit bit. If I just want to make a few small changes the overhead might be too high. </p> <p> <h2>Github</h2> </p> <p> That's where <b>Git+Github actually has an advantage</b>. I - as someone outside of the project does not need to wait for anyone. I can just fork, make changes and push it back to Github. The maintainers of the project can pull my changes later on. This can work very nicely for small patches though for bigger changes people should still talk to each other first. </p> <p> I don't think it would make much sense for Padre to keep the core developers work on their own fork as with the speed of our development we could easily create integration problems but we are told this only the fear of the unenlightened. </p> <p> I can see an advantage of moving to Git and Github but I have my fears from the switch. Besides, the biggest disadvantage I see is that many of our developers don't not know Git - including myself. Actually I know several of them did not know even SVN before they joined the project. The main issue <a href="http://ali.as/">Adam Kennedy</a> mentioned regarding Git was the lack of good Git client on Windows. I don't know the state of the Git GUI client market on Windows so it might be just his totally unaccepted emotional reaction (see above) to the pushing but I can't talk in his name. </p> <p> Anyway I'd be ok moving to Git and Github and keeping a central repository on Github for the core developers and enjoying the benefits of Github for one-off changes but I have a <b>precondition</b>. In order to make that happen we have to <b>make sure our developers can easily use Git</b> so we need a <b>superb Git plugin for Padre with Github integration</b> that works on all operating systems we support. </p> <p> So take it as a challenge. Improve the Git plugin to the point that it is super easy to use it even without knowing much about Git and you removed the biggest obstacles from our way to Git. </p> Gabor Szabo 2010-01-05T20:10:48+00:00 Padre, Git, Subversion, SVN, VCS, Perl, Github Padre on ActivePerl, on FOSDEM and on CeBIT - 2010 starts good http://szabgab.com/blog/2010/01/1262671068.html <p> <a href="http://use.perl.org/~Alias/journal/40077">Adam Kennedy</a> have outlined his plans for Padre for 2010. I don't have such long term plans. Being inpatient in this regard I am usually very bad at projects that take a lot of time to show any signs of life. In a way the <b>Release soon, release often</b> mantra of the open source world very much fits me. </p> <p> Anyway, there are some Padre related news here: </p> <p> <h2>Padre on ActivePerl on Windows</h2> </p> <p> First of all thanks to <a href="http://www.wxperl.co.uk/">Mark Dootson</a> Padre 0.53 is now packaged for ActivePerl on Windows. In order to install it check the instructions on his <a href="http://www.wxperl.co.uk/ppm.html">ppm repository</a>. </p> <p> As he told me the padre.exe does not work there but the padre.bat does. I am not sure if this is related to the bug that <a href="http://padre.perlide.org/trac/ticket/796">Padre Stand Alone does not start first time after installation</a>. or if it is some other issue but it is better to be awre of it. </p> <p> If you are using ActivePerl on Windows now is your time to try it and let us know of any issues. </p> <p> <h2>Padre on FOSDEM</h2> </p> <p> <a href="http://www.fosdem.org/">FOSDEM</a> is just a month away. My lightning talk proposal about <a href="http://padre.perlide.org/">Padre</a> was accepted. That means I'll have 15 minutes to talk about it. </p> <p> As you might have read we are also going to have a Perl stand there for which I am looking for people to help. We need to make sure there are always going to be at least 1 but better 2 people at the stand to talk to visitors. Explain about projects. Explain where Perl stands now. What is Perl 6 and when will it be ready. What is Moose. What is Catalyst. You know, there are going to be lots of questions. </p> <p> On FOSDEM we will have to be prepared on how to talk to people who are very intrested in Open Source and programming but has little - in the good case - or wrong information - in the bad case - about Perl. </p> <p> <h2>Padre on CeBIT</h2> </p> <p> This is not really any Padre issue though Padre will also be represented. Our applicaton for a free Perl booth was accepted by the organizers of <a href="http://www.cebit.de/">CeBIT</a>. That means, a month after FOSDEM we have another event - no talks here just a booth - where we can show Perl and Perl related projects to visitors. </p> <p> This is going to be entirely different from a Perl conference or from FOSDEM as CeBIT and its visitors are really far from the open source world. If on FOSDEM we will have to talk to people who understand our environemnt in general just not our language than on CeBIT we will talk to people many of whom don't know or care about open source or programming at all. They really just want the business value in our tools and products. </p> Gabor Szabo 2010-01-04T21:57:48+00:00 Perl, FOSDEM, Padre, ActivePerl, CeBIT