WordPress 3.9 “Smith” released

A brand new and shiny version of the best CMS ever – WordPress – has been released.  Version 3.9, code-named “Smith” brings quite a few noticeable improvements.  Mostly, these are around the post editor – a new version of TinyMCE, previews for galleries and playlists for audio and video, in-editor image resize and drag-n-drop file uploads.  Also, widget settings were much improved, especially with the live preview before save.  Watch the quick release video and read more here.

Fedora 20 released

Fedora community celebrates the release of Fedora 20 today.  It is an anniversary release, marking 10 years since the birth of the project.   Yes, that’s two releases per year,  all according to the six month release cycle.  Here, I’d like to do a little side tour.

Not many people understand what a Linux distribution is, much fewer comprehend how much work goes into making one.  I have been following Fedora closely since it was born, and tried my hand at building a Red Hat based Linux distribution myself.   Of course, it’s been years since, and many things got simpler and easier, but the overall effort, I’m sure, is still pretty incredible.

Let me break it down for you a bit.  In it’s simplest form, a Linux distribution is just a collection of software.  Pretty much anybody can take a Linux kernel, bash shell with a few tools, and throw together the simplest of all distributions.  But Fedora is not that.  Fedora is much larger.   It consists of thousands of packages.  Each package is not just thrown in, it is tested, packaged and maintained, to make sure upstream patches and updates are integrated properly, and all bug reports travel back upstream.   All of these packages are tested both separately and together to make sure they work with each other.  Often, custom patches have to be developed and applied.  All of these are supported on multiple hardware architectures, in a numerous variety of scenarios.

Just that alone is a monstrous amount of work.  But that’s not all of it.  Fedora maintains a huge infrastructure to make sure tests can be executed, updates could be distributed, and community members can talk to each other.

Tonnes of help is provided to anyone in need.  This includes wiki pages, mailing lists, IRC chats, etc.  Help covers not only newcomers to Fedora distribution, but also seasoned users, system administrators, testers, and also marketing promoters.   A lot of this has been translated into dozens of languages and distributed geographically.

And all of it is an ongoing process.  Just think about it – today the new version is making its way around the world, and if you run “yum update” tomorrow, you’ll definitely find a few packages with freshly baked fixes and improvements.

Thousands and thousands of people are involved in this.  Some write code, some administrate systems, some negotiate with upstream providers, some test software, some write documentation, some translate, some organize shows and conferences, some train people and answer silly questions.  And in all of this havoc and madness, somehow, an original release cycle of once every six month is still being kept.  Yes, true, an occasional schedule slip of a week or two occurs, but overall, it has been a solid two releases per year.  Every year.  For the last 10 years.

A lot of this is hard work.  A lot of it is fun.  But there are also sad chapters in this history.  Fedora 20 is dedicated to Seth Vidal, who was tragically killed in a hit-and-run accident while he was riding his bicycle earlier this year.

On July 8, the Fedora Project lost Seth Vidal, a dedicated, tireless, and brilliant contributor. Seth was a lead developer of Yum and the Fedora update repository system. He worked to ensure that the technical and community infrastructure of Fedora worked well and consistently for users and contributors around the world. Seth touched the lives of hundreds of Fedora contributors directly and millions of others indirectly by improving the experience of using and updating Fedora.

The Fedora Project dedicates the Fedora 20 release to Seth and asks that you join us in remembering his generous spirit and incredible work that helped make Fedora what it is today. We miss you, Seth.

There are ups and downs, victories and losses.  There is no other way in the project of this magnitude, in a crowd of people so huge, and in such a dynamic environment, all lasting for so long.

With all that in mind now, I suggest you give Fedora 20 a try, if you are not a Fedora user.  If you are – happy upgrading!  And let’s not forget to say a huge thank you to everyone who made this release possible.  Good job, guys!

P.S.: If you are interested in the actual changes of this release – please have a look at the changeset document.

WordPress 3.8 is available for immediate download

The bright new and shiny version – WordPress 3.8 – is available for download.  As I mentioned previously, the biggest change is the reworked administration area that now scales well to smaller screens, like those of smartphones and tablets.  It’s far from perfect, but at least it works now.  I’m sure there will be more changes and improvements in the upcoming versions.


But that’s of course not the only change.   The administration area has changed a lot – more contrast, different icons, improved typography, and now even with color schemes.  Also, theme preview and management got changed quite a bit.  With the new theme management interface, the screenshots are larger, which, unfortunately, makes them blur out a bit until theme developers will update with higher resolution versions.

GitHub adds Releases

By now you know that I can’t praise GitHub enough.  It is one of the best tools for developers ever.  Seriously.  It’s up there with git itself, and even Vim.  If you aren’t using it yet, stop whatever it is you are doing and rush there.  Now. I’m not kidding.

So, anyways.  Today GitHub added another awesome feature – Releases.  These are basically git tags on steroids.

GitHub releases


I’ve been already playing around with the idea of releases for our work projects. See, for example, phing-version branch of my sandbox repository.  It worked, but it’s not perfect.  With GitHub Releases however I’ll have pretty much everything I need – release notes, easy full diff reviews, binary attachments, etc.

A little side note for binary attachments: I mostly work with PHP, which doesn’t really need binary attachments.  But I am a part of other, “heavier” projects, developed in C++ for example.  This feature will come in handy.  Also, as far as PHP goes, I was playing with the idea of using RPM and YUM as a mechanism for managing installation, upgrade, and downgrade process.

Back to GitHub Releases now.  This is an excellent example of why you should use GitHub instead of setting up your own environment.  You’ll waste more time and money.  It will be ugly.  And you’ll have to maintain it.  With GitHub you’ll focus on your actual development work and will get excited every now and then when they add a new feature.

CakePHP 2.1.4, 2.2, and a pick into 3.0

There’s been a stream of good news from the CakePHP headquarters recently.  If you are as slow as me on catching up with these things, here is a quick summary.

  • CakePHP 2.1.4 has been release, and that’ll be the last release for the 2.1 branch.  It’s time to move on.
  • CakePHP 2.2 stable has been released, and that’s what you should be using for your projects.
  • CakePHP 3.0 has been mentioned, so if you are interested in contributing early, here is your chance.

CakePHP 3.0 will take a few month to develop.  Mainly, the work is focused around the following:

  • Drop support for PHP 5.2.
  • Add and improve support of PHP 5.4+.
  • Reorganized CakePHP classes to use namespaces to avoid collisions with other libraries and classes.
  • Improve bootstrapping for better control by developers.
  • Rewrite the model layer to support more drivers, object mapping, richer API, etc.
  • Rewrite the routing to work faster and be more flexible.

Overall, it looks like some really healthy activity in CakePHP project.

Upgraded to WordPress 3.4

WordPress 3.4 was released a few days ago.  I didn’t have the time to take a better look at it, but once I read through the new features today, I got excited.  Theme options preview and embeding tweets are the two sweetest features.  Here is a test for the tweet embed.

Which features are your favorite?

Fedora 18 : Spherical Cow

First, the source:

Thank you to everyone who participated in voting for the Fedora 18
release name. The name for Fedora 18, the follow-up to Beefy Miracle,

      Spherical Cow

Voting period:  Friday 2012-04-20 00:00:00 to Friday 2012-04-27 00:00:00
Number of valid ballots cast:  429

That offset a lot of people, it seems.  But personally I like it.  I think it’s always a good idea not to take yourself too seriously.

Fedora 16 : going back to KDE 4

If you follow my Twitter stream, by now you’d know that I’ve upgraded my laptop to the brand new and shining Fedora 16.  In case you were wondering how it went, I’m happy to report that everything went smoothly.  Even more smoothly than I’ve expected.  Given my laptop’s weird wireless card, I always have this problem with kernel-kmod-something package not being available at the time of the distribution upgrade.  That usually means that I lose wireless connectivity for a day or two after I upgrade.  But not this time.  Either the package was ready by the release date or the driver that I’m using is incorporated into the distribution itself.  I don’t know, and, honestly, I don’t care. I’m just happy that it works right out of the box without any tweaks on my part.

I’ve upgraded from the DVD, since the torrent was the first downloadable option, before Fedora 16 was available via preupgrade.  The process looks very familiar – boot from DVD, choose language, choose whether to install or upgrade and existing installation (that was my choice), and let it run for an hour or so, depending on how many packages you have installed and on how fast your DVD drive is.

On first boot, the biggest difference was the graphical login screen, which looks way better now.  Logging into Gnome 3, I haven’t noticed much changes.  Yes, there is an option to add your Google Account to online accounts now, which I did, but so far I don’t know what it does and why would you want to do that.  I noticed that when I move to Activities and start typing, Gnome 3 searches not only through my installed applications, but also through my contacts.  But that functionality is not of much use to me.  After using Gnome 3 for about 30-40 minutes, I caught myself thinking that is is a bit faster, snappier if you will, than the previous version.  Maybe that’s just me and the feeling of new, maybe it’s the forced reboot after the installation – again, I don’t know and I don’t really care.

Distribution upgrade is always a good time to change habits, so I decided to give KDE 4 another try.  In the last 6 month or so I got somewhat used to Gnome 3, but it is still far away from being a productive system for me.  I’ve just learned how to do things I need with it, but it still doesn’t feel right or gives me any pleasure.  Hence, KDE.  My last few tries, which were ranted about at length in this blog, gave me no pleasure either.  This time, however, it looks different.  Things just work the way I expect them to.  All fonts – both for Qt and GTK applications – look good and uniform, icons are on the desktop, panel has shortcuts, the start menu is in place, and, oh boy how much I’ve missed you, the taskbar is there.  I’ve almost forgot how awesome it is to see Skype icon with notifications of incoming chats without having to move your mouse to bottom right corner every time.

The performance of the KDE 4 is also much improved these days.  It’s fast and responsive.  And it can still remember my keyboard shortcuts configured ages ago.  That’s mighty useful.

If you are still waiting for me to describe a problem or two that I experienced, then the only thing I can give you is this.  Both Apache and MySQL service were down for some reason after upgrade.  Restarting MySQL helped straight away, but Apache didn’t want to start.  I had a much customized configuration that I have been dragging from place to place, so I decided to clean it up a bit.  I disabled configurations for mod_perl, mod_python and a bunch of other features, leaving just the ones I actually need.  Restarting the service helped this time, bringing everything back to normal.

So, there you go.  In short, Fedora 16 is the next, improved and solid release for which we should thank all the Fedora community and everyone involved.  Thanks guys, you are doing a heck of a job.  Even with occasional hiccups here and there, I’m still much amazed as to how far you took this distribution in all these years.  Kudos!

CakePHP 2.0 released!

I’ve been a bit all over the place these last few days, but I knew that this was coming shortly – CakePHP team released the new and much improved version 2.0 a couple of days ago. There are a lot of changes. And I do mean a lot. Here are some of my favorite:

  • PHP5 support. CakePHP was working with PHP before, of course. But in this release, support for PHP4 was dropped and all code has been updated to utilize PHP5 goodies.
  • Lazy class loading. Previous versions of CakePHP could easily get slow with a lot of models. There were solutions like Containable behavior and others. But it was annoying never the less. CakePHP 2.0 is much improved in this regard. It only loads things that are actually needed and used. That is a huge performance improvement.
  • Improved Console. The new Console is so much better that I’m even considering using CakePHP 2.0 for some of my non-web-based projects. It’s that good!
  • PHPUnit. Previous versions of CakePHP were using SimpleTest framework for unit tests. CakePHP 2.0 switched to the de facto standard PHPUnit. Tests are now easier to write. And integrating CakePHP projects with other Quality Assurance tools should be a breeze.

There are, of course, more changes. These are just the top few that I am particularly glad about.

Also, CakePHP 2.0 release is special to me. It’s been a long while since I participated in the development process of an Open Source project. I usually just report bugs and provide help via forums and blog posts. I did more than that with CakePHP 2.0. I actually wrote a couple of patches that were accepted and merged into this release. They were no rocket science, but a contribution nonetheless.

If you haven’t tried CakePHP before, now is the perfect time to do so. If you have tried older CakePHP versions, you’ll find this one to be much of an improvement. If you have tried it already, please share your thoughts in the comments. Let me know what you think of it.