May 29, 2008

php | tek 2008 wrapup

I want to make a bit different wrap up than most do, the community aspect with maybe a dash of what I saw as a attendee but mistah Ben Ramsey stole the idea and was quicker to post it ;-)
Ramsey … FAIL
His post is pretty good and sums things up rather nicely so go read it! but I want to take a stab (Stab it! Conf pun intended) at it and hopefully bring my own charm to it.

My trip had the same problem as always when going abroad … My name, but this time around they managed to write Oiormar instead of Thormar like they should have and thus I had the usual fun of being frisked by TSA because they have no idea what Thorn is but hey so it goes, it’s not like my passport has a ASCII verison of my name at the bottom or anything *wave hands for emphizing*

Before leaving for php | tek we inquired on #phpc IRC channel on Freenode how many of the people hanging around would be attending and a whooping 30 people were to show up which translates to roughly 10% of the overall attending people for the whole of php | tek if I got my numbers right, if not then I’m sure Marco will bet me with a stick and correct me :-)
10% of a conference attendees from a single community, to me that feels very impressive and just shows that the community is willing to come together in one place to make the community even more tighter and just make the confs a greate experience and it is always so much fun meeting people in real life that you’ve been talking to for a long time, even many years and you essentially call your comrades.

As Ben pointed out we did a great job coming together as a community at this conference and going behind anything I’ve ever seen before, taking new people under our arms, organizing events during the evenings and the days after / before the conference, the gimmick on the bar we frequent, Shoeless Joe or like I call it, Bootless Bill and just the over all flow between people.

I’d like to congratulate the conference organizers for the excellent idea of having a Rockband evening, it was AWESOME and I met so many new interesting people and I’m sure everyone did, which makes it an even more success, as well as I’d like to give thumbs up for those company sponsored open bars, who ever thought of 2 open bars in one night should get a gold star :-)

Another reason why the community aspect is so important is that we could all sit down together and work on code together, in person or just generally brainstorm about ideas, quick examples are the fact Joshua Eichorn, Greg Beaver (btw he’s not a script! Amazing isn’t it ?) and I could get together for a face to face meeting on the status of PEAR / PEAR2 and work on the new installer as well as the new infrastructure, we probably crammed months worth of code into 3 days on and off coding.

Another excellent example is the fact that we probably managed to bring down Twitter more than once by going bunkers on posting twitters, it was really hard to keep up with Twitter and #phptek on Freenode, which were yet another example of how the community could drag in other conference attendees and interact with them, some people are just generally shy and like to start with such a route.
Anyway so we saw Twitter die more than once and more than twice and more than 40 times and so people just sat down and came up with Stablr.net, admittedly an idea that many people have had before but being able to discuss it in person, with 20+ other smart people interested in the same thing is just amazing.

Then we had the flying elephpant project, parachuting elephpants from really high altitudes.

Just like Ben, I take my hat of to the conference organizers and the people that made this the most fun conference I’ve ever been to, just wow … people justttttt wow, hopefully next years will be even more fun :-)
I’d also like to thank Scott for tolerating me this whole time, if it were not for him then I would probably have slept under some bridge nearby.

Btw. for those that didn’t go with us to Howling at the moon in down town Chicago, next time you are in the area go there, it was a wild night I can tell you, riddled with competitions among the remaining people involving some peoples accents and dancing but thankfully nobody had a camera or such device ;-)
Without a doubt a place we should all go next year to!

I feel like I must mention 2 talks I liked a lot, actually they were both keynotes, the one from Joe Stagner a laid back session where people got to ask him a whole bunch of questions about MS and more, best thing about it was seeing people discussing on IRC what to ask next so we got some really good questions IMHO

And then there was Terry Chay … Terry Terror, first time I saw him present that talk and it was fun as it can get, worth seeing but don’t take your serious hat with you :-)

As anyone can see this is a bit half cooked blog post since it was done on a flight from JFK to Iceland but heck, I think the disorganization just shows how much we did during this one conference.

May 22, 2008

Return early and simplified if else

Lukas posted a very interesting post yesterday, http://pooteeweet.org/blog/0/1107#m1107 on early returns in code which is a subject he and I have talked about couple of times before and I’m still not sure why we haven’t pushed for it into the PEAR standard.

Returning early is a thing I simply love, it can make your code so much more readable with very little effort at all and the flow feels a lot more normal e.g. check for errors and return if found, kinda like airport checks, they check if you are legit at the checkin board and then at the security gate and each time they throw you away if you are not legit.

I’ve been battling with a lot of PEAR code to return early because some of the code can look like a maze, the PEAR installer for example, go see the blog post by Lukas to see couple of examples but here’s a big pet peeve of mine that I try to correct every single time:

 function bar() 
 {
     if ($foo) {
         a lot of fun code         
         return $somethingUseful;     
     } else {
         return false;
     } 
 }

Obviously this is a very minute example but it can be turned into:

 function bar() 
 {     
     if ($foo) {         
         a lot of fun code         
         return $somethingUseful;     
     }     
     
     return false; 
 }

this is what I call shit mixing but still makes it more readable but this way I prefer which is the way Lukas portrays

 function bar() 
 {     
     if (!$foo) {         
         return false;     
     }     

     a lot of fun code     
     return $somethingUseful; 
 }

Think I will try to push this into the PEAR manual one of these days if possible, makes things so much better.

March 28, 2008

Google Summer of Code has arrived, again

Summer of code is around the corner and I hope to mentor again this year, last years experience was a blast.

Anyway we’re looking for some kick as students to apply to the PHP project so get your ass to the google summer of code page and apply your awesome mega cool idea :-)

If you lack ideas what to submit then head to http://wiki.php.net/gsoc/2008 for some ideas but we welcome new ones, so don’t be afraid about being bold.

This year we’ll be accepting PHP core ideas (internals of PHP it self), php infrastructure (websites and such), PHP-GTK, PEAR, PECL, PHPUnit and SimpleTest … Hope I’m not missing anything, but anyway if you are interested in ANY of those projects then please go a head and read the wiki to get a general idea of things and then make up a idea of your own.

Students can start submitting their applications to projects, the deadline is 31 March so get a move on people! I want to see YOUR applications in there or I’ll be hunting you down.

Tags: , , ,
February 16, 2008

Komodo 4.3 – First look

I decided to give Komodo 4.3 alpha1 a spin and I’ve been running it for a better part of a week now I reckon (since 9th feb) and I must say I like it, a good improvement over 4.2 by far but still has some kinks, mostly in the newly added features I guess.

1st run – Code Intelligence tried to run and do some weird stuff but it hangs, so I had to kill Komodo, startup after that is snappy, faster than 4.2 IMHO

Search in all files = Slow as heck, installing grep and running it is faster (including the installation step), wonder if it’s like a first time cache it’s building up (debunked that theory, strike through isn’t working on this theme so meh.)

The slowness persists and is in Phase 1, gathering list of files and seems to also look in my PEAR dir for some reason; look in current project suddenly became current projects + include_path I think, could be the slow down, grep (like I use it) only searches in the dir I’m in (usually the root of the project) and down. So what I’d want is a new option “search only in current project” on top of the already existing feature :)

Would be better if it displayed results as it found them, seems to hold of for too long

The Asynchronous SCC part is going beautifully, I like it, was getting a wee bit tired of the UI hangups that 4.2 had

Haven’t given the new Unit Test runner a go since none of the projects I’m actively working on at this moment use PHPUnit but I did try to make a Test Plan and it’s not showing up anywhere and a closing Komodo and opening again doesn’t find it in the Project Unit Test Result tab but picking Project -> Select Test Plan does find it and picking the test plan updates the tab I mentioned earlier.

For the fun of it I tried to pick PHP as the language I wanted to run in and in the test command line I did pear run-tests -r just so see if I could cheat past the PHPUnit part but apparently it does not work, but gives me no error or any output what so ever, quite confusing, would have expected “Can’t run” or “No ouput”, “nothing ran” or whatever, but a alpha release is a alpha release.

Now if I just could find out how I edit or delete test plans, that would be swell.

When I have a folder open in the project view which has say, tests I’m running and they fail (phpt) they generate these .diff, .out .exp and whatever, seems to hang up the UI to update the view, same goes if I have one of those files open when I’m running the tests and the contents of the file I have open changes, then Komodo becomes a bit sluggish for a while, sometimes it’s just a second but sometimes longer, I guess it depends on how many tests I’m touching and how many of them are failing or succeeding after having failed (thus cleaning up all the extra files that were added)


Sorry about the hectic sounding post, I wrote this on the fly when I first tried out Komodo 4.3 :-P I’m going to hold of reporting bugs until alpha2 or beta1 is out and if these issues still persist then I’ll try to allocate time to report any of these bugs / feature requests and hopefully other people will enjoy the fixes that will come out of it ;-)

Tags: , ,
February 9, 2008

Komodo – The first 3 months

Update: Sean and Shane gave me some tips on some hidden goodies, post updated to reflect that

Update: Sean C came to the rescue on how I should decrease indenting, shift + tab, works like a charm! thanks mate :) Still think it should be listed in the menu like all the other shortcuts

Shane told me how to do the panel hiding, apparently you can do Help – List Keybindings, now who on this earth ever looks in there ;-)

For showing/hiding the 3 panes:

  • Project pane, project tab (left) ctrl+shift+p
  • Project pane, code tab (left) ctrl+shift+c
  • Toolbox pane (right) ctrl+shift+t
  • Output pane (bottom) ctrl+shift+o
  • Focus to edit pane ctrl+shift+e

Even cooler is, I can do custom keybindings


Managed to fix this somehow, managed to fix the dir in another dir but not really (a mouthful) issue, not sure how tho :)


About the folder add problem, filed a bug http://bugs.activestate.com/show_bug.cgi?id=74774 Hopefully Todd will resolve this before 4.3.0 is out


After I got my new laptop in last November I decided to get a new editor that could work in Windows & Linux and Sean C. told me to give Komodo a go; Having tried it couple of years back and having what I’d describe as blend feelings then I wasn’t really convinced but thought I had nothing better to do (was at a conference) and installed the trial for Komodo IDE and wow it had improved a TON, I must say I fell instantly in love with it.

After having used it I found a couple of flaws or well things that made the usage not perfect for me but well perfection is a rare thing ;-)

First problem I saw was it a bitch when I had HUGE projects with bazillion files and all in a SCM of one or another sort, it would basically just hang when trying to fetch all the status info for each file (Komodo does this nifty thing to show you in your file manager if the file has been edited or is not in sync with the SCM) so handling projects like the pear installer was not so … optimal but after a quick email exchange with Shane C. then he told me that Komodo 4.3 will fix that, he actually finally blogged about it today: http://blogs.activestate.com/shanec/2008/02/komodo-43-in-te.html

And it looks like 4.3 will fix another pet peeve of mine, searching for things per project, on linux it’s a breeze from the command line, grep -ri “foobar” . in the root of the project and voila, supports some regex and what not, perhaps not the most slick solution but it does work and having it straight in Komodo will be nice even tho it will be hard to break of using the cli but perhaps a good thing, can’t setup gnuwin32 on all the machines I might have to code on if they should contain a Windoze.

The Unit Test feature in 4.3 also sounds quite interesting but I’m very disappointed that they don’t seem to support .phpt tests or at least they don’t say they do, PHPUnit is all well and good but most of my tests are phpt so what I’m saying, Shane I demand you add phpt support! I mean it’s the default PHP test suite ;-) Oh and it would be nice if I could make it run the php run tests and the pear one, basically the same but different test runners it calls.

Now back to my problems and what I like with 4.2 :)

For some reason a directory in my project file listing was moved INTO another directory and I can’t for my little life move it back, even if it didn’t happen on the FS it self, it just baffles me, bugging having to remember that one bloody folder is in a different place JUST in komdo for one project :P

As Peter Griffin would put it, this really grinds my gears.

Adding a new file to a SCM via Komodo is also just a pain in the butt, for some reason I can’t add a folder unless I issue a full add on the root folder of the folder I’m trying to add … or something like that, usually end up doing it via cli.

Komodo is lacking some usability shortcuts … decrease ident doesn’t have a short cut, hiding the left / right panes don’t have shortcuts (to my knowledge) perhaps even adding something like Dynamics AX has (just started using it at work, one of the features I liked) which basically is I can hide it but I see a small bar on the left side and when I hover it it pops out and when I leave it for X time it goes away again or like Opera does it, a very thin bar which I have to click or some shortcut and it pops out, click it again it goes away, anyway just a nice feature to have because I tend to work on a 13,3″ screen in 1280×800 which is not a lot of screen space.

Ohh and I also want a way to checkout a repo; Bugging to use the run command or plain cli to do that, best would be if I could do a checkout and auto create a project for it :P

But other than that it has been rocking hard for my use cases, almost perfect ;-) Still having tried the whole debug feature, using xdebug via Komodo and all that but I will soonish, I’m told it’s a very useful and fun feature and perhaps some addons, having seen many thus far, might have been looking in the wrong place.

So all in all, big thumbs up to Komodo, and thanks to ActiveState and Shane for plugging a free license for me since I only do coding in my spare time and don’t have a company to buy it for me and so basically ActiveState has been sponsoring my last 3 months of open source work! Very cool! Would be even cooler if Greg Beaver would get a license, he’s another great OS coder that doesn’t make a living of doing programming, he told me he tried to contact someone in ActiveState with no luck, hopefully someone will see this post and fix that up :-)

Can’t wait for 4.3 /me counts the days

January 4, 2008

New features and changes in pear.php.net

I just did a new release of pear.php.net which has a bunch of new features and bug fixes, most of which you can see here.

Continue reading

January 2, 2008

MS WebDev Summit 07 and my first trip to the US of A

I’ve been putting of writing this entry for way too long, mostly because I’m lazy but also because at work the weeks and months after the trip were crazzzzy but I figured since I’m on my Christmas vacation and have nothing better to do then why not jot my adventure down.

Btw. Happy Holidays and a new year! :-)

So I was one of the people invited to the WebDev summit in Redmond, which was exciting for three reasons, I love going to conferences, meeting up with people I’ve been babbling to via emails, irc and all the other geeky communication ways, the second reason was that I had never gone to the States, ever. Now the third reason was the whole MS thing, seeing the MS campus, meeting MS employees, developers, marketing people, hearing about new products, how they intend to get more involved in the PHP community, etc.

Continue reading

December 9, 2007

Got my GSoC 2007 T-Shirt Part II

OKey so I talked about getting some pictures online of the t-shirt and also of the envelope since they managed to get my name right :) Amazing I tells you

Anyway here’s the envelope with my proper name! Envelope

And now the t-shirt: Front Back

The white balance is way off but hey, I had a shitty camera and I’m no Derick when it comes to cameras :)

Anyway just wanted to post these pics in case someone wanted to see what the t’s looked this year.

Tags: , ,
November 20, 2007

Got my GSoC 2007 T-Shirt

So I finally got my GSoC 2007 t-shirt delivered at home, by finally I mean it has taken more than the usual shipping time from the USA and it’s a beauty, extra price on top of all the enjoyment working with Igor this summer.

Unfortunately I couldn’t find my digital camera to show case this nifty design they produced, I especially liked the design on the back … I shall try to snap of some pictures very soon and post for those that haven’t seen those beauties ;)

One interesting thing, Google managed to print my name correctly on the delivery envelope, which is kinda of a huge thing, even the Thorn and the funky O thing in my name … I still haven’t seen ANY company outside of Iceland do that, I had heck of a fun experience when I when to the states for the MS Web Summit ’07 but more on that in another blog post.

Update: Sara summed it up quite well here about both her naming problems with companies as well as mine :P

Spelling nonsense

Tags: , ,
September 14, 2007

Planet PHP and blog submissions

So it seems all the Planet PHP admins have been quite busy lately, when I logged in the admin interface for the planet I was greated with buttload of submissions, the queue was literally full :-o

So I set aside sometime to finally work through the queue, weed out all the spam links and bullshit blogs and making sure all the entries I accept are valid and won’t break the planet or any feed readers (well hopefully I managed to do so ;P), additionally I tried to make sure that the entires on each blog were worthwhile so I read an entry or two on every blog but I soon ran out of coke and only skimmed over most of them, bad Helgi! I know :-/ This process took me nearly 2 and a half hour, including lunch and now we only have 4 blogs in the queue, all due to the fact I couldn’t find a feed that worked on their site (yes I did have to look at some of the sites to find a valid feed, not fun!)

So, we finally have people like Chuck H, Steph and her weeklies on planet-php (again actually), seems her submission got lost in the huge queue else I would have accepted her weeks ago, we can’t be without her weeklies now can we!

Anyway now we have a lot of new faces (and some old ones that finally decided to blog) and hopefully we’ll see great posts from them in the future but well if any of these newcomers starts to spam the planet with posts that you guys feel shouldn’t be here then ping me in the usual places and I’ll do something about it, all to keep you peeps happy I guess :-)

Tags: , ,