This past spring I had the great opportunity to work with Matthew Helmke, José Antonio Rey and Debra Williams of Pearson on the 8th edition of The Official Ubuntu Book.
In addition to the obvious task of updating content, one of our most important tasks was working to “future proof” the book more by doing rewrites in a way that would make sure the content of the book was going to be useful until the next Long Term Support release, in 2016. This meant a fair amount of content refactoring, less specifics when it came to members of teams and lots of goodies for folks looking to become power users of Unity.
Quoting the product page from Pearson:
The Official Ubuntu Book, Eighth Edition, has been extensively updated with a single goal: to make running today’s Ubuntu even more pleasant and productive for you. It’s the ideal one-stop knowledge source for Ubuntu novices, those upgrading from older versions or other Linux distributions, and anyone moving toward power-user status.
Its expert authors focus on what you need to know most about installation, applications, media, administration, software applications, and much more. You’ll discover powerful Unity desktop improvements that make Ubuntu even friendlier and more convenient. You’ll also connect with the amazing Ubuntu community and the incredible resources it offers you.
Huge thanks to all my collaborators on this project. It was a lot of fun to work them and I already have plans to work with all three of them on other projects in the future.
So go pick up a copy! As my first published book, I’d be thrilled to sign it for you if you bring it to an event I’m at, upcoming events include:
- August 9, Philadelphia: Fosscon
- August 27-31, Portland, OR: Debconf 14
- September 11-13, Orlando: Fossetcon
- September 23, San Francisco: PuppetConf
- October 22-23, Raleigh: All Things Open
And of course, monthly Ubuntu Hours and Debian Dinners in San Francisco.
Technically a fork is any instance of a codebase being copied and developed independently of it’s parent. But when we use the word it usually encompasses far more than that. Usually when we talk about a fork we mean splitting the community around a project, just as much as splitting the code itself. Communities are not like code, however, they don’t always split in consistent or predictable ways. Nor are all forks the same, and both the reasons behind a fork, and the way it is done, will have an effect on whether and how the community around it will split.
There are, by my observation, three different kinds of forks that can be distinguished by their intent and method. These can be neatly labeled as Convergent, Divergent and Emergent forks.Convergent Forks
Most often when we talk about forks in open source, we’re talking about convergent forks. A convergent fork is one that shares the same goals as it’s parent, seeks to recruit the same developers, and wants to be used by the same users. Convergent forks tend to happen when a significant portion of the parent project’s developers are dissatisfied with the management or processes around the project, but otherwise happy with the direction of it’s development. The ultimate goal of a convergent fork is to take the place of the parent project.
Because they aim to take the place of the parent project, convergent forks must split the community in order to be successful. The community they need already exists, both the developers and the users, around the parent project, so that is their natural source when starting their own community.Divergent Forks
Less common that convergent forks, but still well known by everybody in open source, are the divergent forks. These forks are made by developers who are not happy with the direction of a project’s development, even if they are generally satisfied with it’s management. The purpose of a divergent fork is to create something different from the parent, with different goals and most often different communities as well. Because they are creating a different product, they will usually be targeting a different group of users, one that was not well served by the parent project. They will, however, quite often target many of the same developers as the parent project, because most of the technology and many of the features will remain the same, as a result of their shared code history.
Divergent forks will usually split a community, but to a much smaller extent than a convergent fork, because they do not aim to replace the parent for the entire community. Instead they often focus more on recruiting those users who were not served well, or not served at all, by the existing project, and will grown a new community largely from sources other than the parent community.Emergent Forks
Emergent forks are not technically forks in the code sense, but rather new projects with new code, but which share the same goals and targets the same users as an existing project. Most of us know these as NIH, or “Not Invented Here”, projects. They come into being on their own, instead of splitting from an existing source, but with the intention of replacing an existing project for all or part of an existing user community. Emergent forks are not the result of dissatisfaction with either the management or direction of an existing project, but most often a dissatisfaction with the technology being used, or fundamental design decisions that can’t be easily undone with the existing code.
Because they share the same goals as an existing project, these forks will usually result in a split of the user community around an existing project, unless they differ enough in features that they can targets users not already being served by those projects. However, because they do not share much code or technology with the existing project, they most often grow their own community of developers, rather than splitting them from the existing project as well.
All of these kinds of forks are common enough that we in the open source community can easily name several examples of them. But they are all quite different in important ways. Some, while forks in the literal sense, can almost be considered new projects in a community sense. Others are not forks of code at all, yet result in splitting an existing community none the less. Many of these forks will fail to gain traction, in fact most of them will, but some will succeed and surpass those that came before them. All of them play a role in keeping the wider open source economy flourishing, even though we may not like them when they affect a community we’ve been involved in building.
Why oh why are they so hard to write?
Even using the built in modules it is insanely hard to debug. Playing a bootsplash in X sucks and my machine boots too fast to test it on reboot.
Basically, euch. All I wanted was a hackers zebra on boot :(
Friday was my last day at Collabora, the awesome Open Source consultancy in Cambridge. I’d been there more than three years, and it was time for a change.
As luck would have it, that change came in the form of a job offer 3 months ago from my long-time friend in Open Source, Miguel de Icaza. Monday morning, I fly out to Xamarin’s main office in Boston, for just over a week of induction and face time with my new co workers, as I take on the title of Release Engineer.
My job is to make sure Mono on Linux is a first-class citizen, rather than the best-effort it’s been since Xamarin was formed from the ashes of the Attachmate/Novell deal. I’m thrilled to work full-time on what I do already as community work – including making Mono great on Debian/Ubuntu – and hope to form new links with the packer communities in other major distributions. And I’m delighted that Xamarin has chosen to put its money where its mouth is and fund continued Open Source development surrounding Mono.
If you’re in the Boston area next week or the week after, ping me via the usual methods!
So it's that time of year again, it's my ex-smoker-versary. Okay I'll come up with a better name for next year but for now you'll have to make do with my reflection on smoking and why it's really not that hard to quit, as well as a few silly numbers.
Thirty-six-score-and-ten days ago I stopped smoking.
- I stopped picking them up.
- I stopped buying them.
- I stopped doing things that made me want to smoke.
- I stopped cold turkey. No NRT, no e-cigs.
I just stopped and braced for the worst.
And I was expecting the worst.
It took me quitting to realise that it was probably that fear of unworldly cravings that kept me smoking for 10 years. When I got to 4 weeks without any nicotine I realised hadn't been that bad at all... Anything that says otherwise is probably either trying to keep you smoking or is trying to sell you something to do instead.Quitting is easy, just stop smoking and you'll realise that
And this isn't a silly confidence trick. I'm not going to get all happy-clappy and woosah about this. Just stop smoking and you'll see that after a week you won't physically crave (the worst bit), after two or three you stop thinking about them, and after four weeks you're awesome...
Just don't start smoking again. A sober, smoke-free mind is jubilant you're not smoking, and under its sole influence you'll do anything to avoid clouds of smoke... But have a couple of drinks and you can very quickly find yourself drifting intimately close to smokers.
I've also heard from more than a couple of people who "tried to quit" but were still surrounded by cigarettes. Quitting does take willpower and few have enough to resist that "emergency packet" especially in the first couple of weeks. Chuck them all, avoid your triggers and make it easy on yourself.
You have to be vigilant. And consistent.
One cigarette is the end of the world. No, you cannot have a cigar.
Now onto the fun stuff. There's a silly little tray application called QuitCount in the Ubuntu repos that I set up when I quit. It just keeps track of the number of days, an accumulated number of cigarettes (based on my rate of ~13 a day) and works out how much that would cost, as well as using some formula to work out how much less dead I'm going to be.
- 9490 cigarettes have gone un-smoked
- 94.9g of tar not in my lungs
- An extra £3368.95 cluttering up my bank account (I wish), which is good because I also get:
- An extra 66 days cluttering up the planet.
And I wasn't a heavy smoker. If you're on 20 or 40 a day, those numbers could be a whole lot higher if you quit today.
Photo credit: mendhak
My first Erlang Factory, the event lasted for two fun-filled days and culminated with a stroll in the evening sun of San Francisco down to the Rackspace office where we held a Meetup mini-conference (beer, food, and three more talks). Conversations lasted until well after 10pm with the remaining die-hards making a trek through the nighttime streets SOMA and the Financial District back to their respective abodes.
Before the close of the conference, however, we managed to sneak a ride (4 of us in a Mustang) to Scoble's studio and conduct an interview with Joe Armstrong and Robert Virding. We covered some of the basics in order to provide a gentle overview for folks who may not have been exposed to Erlang yet and are curious about what it has to offer our growing multi-core world. This wend up on the Rackspace blog as well as the Building 43 site (also on YouTube). We've got a couple of teams using Erlang in Rackspace; if you're interested, be sure to email Steve Pestorich and ask him what's available!
This is a follow-up to the End of Life warning sent last month to confirm that as of today (July 17, 2014), Ubuntu 13.10 is no longer supported. No more package updates will be accepted to 13.10, and it will be archived to old-releases.ubuntu.com in the coming weeks.
The original End of Life warning follows, with upgrade instructions:
Ubuntu announced its 13.10 (Saucy Salamander) release almost 9 months ago, on October 17, 2013. This was the second release with our new 9 month support cycle and, as such, the support period is now nearing its end and Ubuntu 13.10 will reach end of life on Thursday, July 17th. At that time, Ubuntu Security Notices will no longer include information or updated packages for Ubuntu 13.10.
The supported upgrade path from Ubuntu 13.10 is via Ubuntu 14.04 LTS. Instructions and caveats for the upgrade may be found at:
Ubuntu 14.04 LTS continues to be actively supported with security updates and select high-impact bug fixes. Announcements of security updates for Ubuntu releases are sent to the ubuntu-security-announce mailing list, information about which may be found at:
Since its launch in October 2004 Ubuntu has become one of the most highly regarded Linux distributions with millions of users in homes, schools, businesses and governments around the world. Ubuntu is Open Source software, costs nothing to download, and users are free to customise or alter their software in order to meet their needs.
Originally posted to the ubuntu-announce mailing list on Thu Jul 17 16:19:36 UTC 2014 by Adam Conrad
In this week’s show:
- We interview David Hermann about his MiracleCast project…
We also discuss:
- We share some Command Line Lurve: YouTube-Upload to upload videos to YouTube from the command line:
And we read your feedback, including:
- Simon’s link to Seafile
- ”’full screen cast email here when we have permission”’
Thanks for sending it in!
We’ll be back next week, so please send your comments and suggestions to: firstname.lastname@example.org
Join us on IRC in #uupc on Freenode
Leave a voicemail via phone: +44 (0) 203 298 1600, sip: email@example.com and skype: ubuntuukpodcast
Follow us on Twitter
Find our Facebook Fan Page
Follow us on Google+
Barcelona Free Software Users & Hackers are having a Barcelona Free Software Users & Hackers mañana, see you there!
Ubucon LatinAmerica speakers list is here! This is the first post about our Speakers.
1- Bhavani Shankar
He is coming from India, he has an amazing background as Ubuntu Developer and member of the Ubuntu Loco Council.
He will talk about “Ubuntu Developing for Dummies” Esp:”Desarrollo de Ubuntu para dummies”. We will learn about all the components of Ubuntu, coding and making own our software and much more!
2- Marcos Alvarez Costales
He is Linux Developer and Works with Ubuntu Spain Community, founder and developer of Gufw ( http://gufw.org/ ) , Pylang, Folder Color and the Weapp for Telegram.
His conferences will be about Linux Security and how to create your own WebAppps in Ubuntu.
3- Fernando Lanero
Teacher, administrator of http://ubuntuleon.com , worked with migrations in education centers to Ubuntu. His talk called “Linux is Education, Linux is Science” , Spanish: “Linux es Educación, Linux es Ciencia”
Information in Spanish: http://ubuntu-co.com/node/3231
4- Fernando García Amen
Information in Spanish: http://ubuntu-co.com/node/3231
5- Darwin Proaño Orellana
IT engineer from Universidad del Azuay and President of CloudIT Ecuador, his talks will be about “freee-clouds” and “How to migrate from Windows in a safety mode”
As you know the Ubucon LatinAmerica will be on August 14th until 16th.
Two years ago, I got appointed as chairman of the openSUSE Board. I was very excited about this opportunity, especially as it allowed me to keep contributing to openSUSE, after having moved to work on the cloud a few months before. I remember how I wanted to find new ways to participate in the project, and this was just a fantastic match for this. I had been on the GNOME Foundation board for a long time, so I knew it would not be easy and always fun, but I also knew I would pretty much enjoy it. And I did.
Fast-forward to today: I'm still deeply caring about the project and I'm still excited about what we do in the openSUSE board. However, some happy event to come in a couple of months means that I'll have much less time to dedicate to openSUSE (and other projects). Therefore I decided a couple of months ago that I would step down before the end of the summer, after we'd have prepared the plan for the transition. Not an easy decision, but the right one, I feel.
And here we are now, with the official news out: I'm no longer the chairman :-) (See also this thread) Of course I'll still stay around and contribute to openSUSE, no worry about that! But as mentioned above, I'll have less time for that as offline life will be more "busy".
openSUSE Board Chairman at oSC14
Since I mentioned that we were working on a transition... First, knowing the current board, I have no doubt everything will be kept pushed in the right direction. But on top of that, my good friend Richard Brown has been appointed as the new chairman. Richard knows the project pretty well and he has been on the board for some time now, so is aware of everything that's going on. I've been able to watch his passion for the project, and that's why I'm 100% confident that he will rock!
We had a fun two hour meeting in #plasma yesterday to decide on the tasks for the next release. It's due out in October and there's plenty of missing features that need to be added before Plasma 5 is ready for the non-geek.
Previously Plasma has used wiki lists to manage the Todo list but this is very old-school and clunky to manage. Luckily Ben the KDE Sysadmin has just finished saving some children from a burning building before he swooped in and set up
todo.kde.org just in time for us to add some 30 Todo items.
There will also be a meeting next week to discuss Wayland action items, come along if you want to help Martin shape the future.
Meanwhile former tabloid rag turned bastian of quality journalism OMGUbuntu said
KDE Plasma 5 Arrives with Fresh New Look, True Convergence. More nice comments: "I tested the neon iso yesterday and it looks absolutely stunning!".
I'd like to thank Scarlett for putting in loads of hours perfecting the KF5 and Plasma 5 packages and now Rohan is tidying KF5 up and uploading to the Ubuntu archive.
As many of you will know, I organize an event every year called the Community Leadership Summit. The event brings together community leaders, organizers and managers and the projects and organizations that are interested in growing and empowering a strong community.
The event kicks off this week on Thursday evening (17th July) with a pre-CLS gathering at the Doubletree Hotel at 7.30pm, and then we get started with the main event on Friday (18th July) and Saturday (19th July). For more details, see http://www.communityleadershipsummit.com/.
Also, be sure to join the new Community Leadership Forum for discussing topics that relate to community management, as well as topics for discussion at the Community Leadership Summit event each year. The forum is designed to be a great place for sharing and learning tips and techniques, getting to know other community leaders, and having fun.
I also have a busy OSCON schedule. Here is the summary:Community Management Training
On Monday 21st July from 9am – 6pm in D135 I will be providing a full day of community management training at OSCON. This full day of training will include topics such as
- The Core Mechanics Of Community
- Planning Your Community
- Building a Strategic Plan
- Building Collaborative Workflow
- Defining Community Governance
- Marketing, Advocacy, Promotion, and Social Media
- Measuring Your Community
- Tracking and Measuring Community Management
- Conflict Resolution
On Tues 22nd July at 10.40am in Expo Hall A I will be providing an Office Hours Meeting in which you can come and ask me about:
- Building collaborative workflow and tooling
- Conflict resolution and managing complex personalities
- Building buzz and excitement around your community
- Incentivized prizes and innovation
- Hiring community managers
- Anything else!
Finally, on Wed 23rd July at 2.30pm in E144 I will be giving a presentation called Dealing With Disrespect that is based upon my free book of the same name for managing complex communications.
This is the summary of the talk:
In this new presentation from Jono Bacon, author of The Art of Community, founder of the Community Leadership Summit, and Ubuntu Community Manager, he discusses how to process, interpret, and manage rude, disrespectful, and non-constructive feedback in communities so the constructive criticism gets through but the hate doesn’t.
The presentation covers the three different categories of communications, how we evaluate and assess different attributes in each communication, the factors that influence all of our communications, and how to put in place a set of golden rules for handling feedback and putting it in perspective.
If you personally or your community has suffered rudeness, trolling, and disrespect, this presentation is designed to help.
I will also be available for discussions and meetings. Just drop me an email at firstname.lastname@example.org if you want to meet.
I hope to see many of you in Portland this week!
How acceptance tests are packaged and run has morphed over time. When autopilot was originally conceived the largest user was the unity project and debian packaging was the norm. Now that autopilot has moved well beyond that simple view to support many types of applications running across different form factors, it was time to address the issue of how to run and package these high-level tests.
While helping develop testsuites for the core apps targeting ubuntu touch, it became increasingly difficult for developers to run their application's testsuites. This gave rise to further integration points inside qtcreator, enhancements to click and its manifest files, and tools like the phablet-tools suite and click-buddy. All of these tools operate well within the confines they are intended, but none truly meets the needs for test provisioning and execution.
With these thoughts in mind I opened the floor for discussion a couple months ago detailing the need for a proper tool that could meet all of my needs, as well as those of the application developer, test author and CI folks. In a nutshell, a workflow to setup a device as well as properly manage dependencies and resolve them was needed.
Autopkg tests all the things
I'm happy to report that as of a couple weeks ago such a tool now exists in autopkgtest. If the name sounds familar, that's because it is. Autopkgtest already runs all of our automated testing at the archive level. New package uploads are tested utilizing its toolset.
So what does this mean? Utilizing the format laid out by autopkgtest, you can now run your autopilot testsuite on a phablet device in a sane manner. If you have test dependencies, they can be defined and added to the click manifest as specified. If you don't have any test dependencies, then you can run your testsuite today without any modifications to the click manifest.
Yes, but what does this really mean?
This means you can now run a testsuite with adt-run in a similar manner to how debian packages are tested. The runner will setup the device, copy the tests, resolve any dependencies, run them, and report the results back to you.
Support for running tests this way is still new. If you do find a bug, please file it!
To use the tool first install autopkgtest. If you are running trusty, the version in the archive is old. For now download the utopic deb file and install it manually. A proper backport still needs to be done.
Also as of this writing, I must caution you that you may run into this bug. If the application fails to download dependencies (you see 404 errors during setup), update your device to the latest image and try again. Note, the latest devel image might be too old if a new image hasn't been promoted in a long time.
I want to see it!
Go ahead, give it a whirl with the calendar application (or your favorite core app). Plug in a device, then run the following on your pc.
bzr branch lp:ubuntu-calendar-app
adt-run ubuntu-calendar-app --click=com.ubuntu.calendar --- ssh -s /usr/share/autopkgtest/ssh-setup/adb
Autopkgtest will give you some output along the way about what is happening. The tests will be copied, and since --click= was specified, the runner will use the click from the device, install the click in our temporary environment, and read the click manifest file for dependencies and install those too. Finally, the tests will be executed with the results returned to you.
Please try running your autopilot testsuites this way and give feedback! Feel free to contact myself, the upstream authors (thanks Martin Pitt for adding support for this!), or simply file a bug. If you run into trouble, utilize the -d and the --shell switches to get more insight into what is happening while running.
Plasma 5 was released yesterday and the internet is ablaze with praise and delight at the results.
Slashdot just posted their story KDE Releases Plasma 5 and the first comment is “Thank our KDE developers for their hard work. I’m really impressed by KDE and have used it a lot over the years.“ You’re welcome Slashdot reader.
They point to themukt’s Details Review of Plasma 5 which rightly says “Don’t be fooled, a lot of work goes down there“.
“The science fictional name reflects the futuristic technology which is already ahead of its time (companies like Apple, Microsoft, Google and Canonical are using ideas conceptualized or developed by the KDE community).”
“With the release of Plasma 5, the community has once again shown that free software code developed without any dictator or president or prime-minister or chancellor can be one of the best software code.”
LWN has a short story on KDE Plasma 5.0 which is as usual the place to go for detailed comments including several from KDE developers.
ZDNet’s article KDE Plasma 5 Linux desktop arrives says “I found this new KDE Plasma 5 to be a good, solid desktop” and concludes “I expect most, if not all, KDE users to really enjoy this new release. Have fun!” And indeed we do have lots of fun.
And Techage gets nonenculture wrong in KDE 5 is Here: Introducing a Cleaner Frontend & An Overhauled Backend and says “On behalf of KDE fans everywhere, thank you, KDE dev team” aah, it’s nice to be thanked
Web UPD8 has How To Install KDE Plasma 5 In Kubuntu 14.10 Or 14.04 a useful guide to setting it up which even covers removing it when you want to go back to the old stuff. Give it a try!
If you’re wondering where have you heard the name Brightbox before, it might be because they contribute updated Ruby packages for all Ubuntu users.
Official images that stay up to day, updated Ruby stacks for developers, it’s pretty much win-win for Ubuntu users!
Or yet another reason why it’s really important that we succeed with Debian LTS. Last year we heard of Dreamhost switching to Ubuntu because they can maintain a stable Ubuntu release for longer than a Debian stable release (and this despite the fact that Ubuntu only supports software in its main section, which misses a lot of popular software).
A few days ago, we just learned that Spotify took a similar decision:
A while back we decided to move onto Ubuntu for our backend server deployment. The main reasons for this was a predictable release cycle and long term support by upstream (this decision was made before the announcement that the Debian project commits to long term support as well.) With the release of the Ubuntu 14.04 LTS we are now in the process of migrating our ~5000 servers to that distribution.
This is just a supplementary proof that we have to provide long term support for Debian releases if we want to stay relevant in big deployments.
But the task is daunting and it’s difficult to find volunteers to do the job. That’s why I believe that our best answer is to get companies to contribute financially to Debian LTS.
We managed to convince a handful of companies already and July is the first month where paid contributors have joined the effort for a modest participation of 21 work hours (watch out for Thorsten Alteholz and Holger Levsen on debian-lts and debian-lts-announce). But we need to multiply this figure by 5 or 6 at least to make a correct work of maintaining Debian 6.
So grab the subscription form and have a chat with your management. It’s time to convince your company to join the initiative. Don’t hesitate to get in touch if you have questions or if you prefer that I contact a representative of your company. Thank you!
A year and a half ago Qt 5 was released giving KDE the opportunity and excuse to do the sort of tidying up that software always needs every few years. We decided that, like Qt, we weren't going for major rewrites of the world as we did for KDE 4. Rather we'd modularise, update and simplify. Last week I clicked the publish button on the story for KDE Frameworks 5, the refresh of kdelibs. Interesting for developers. Today I clicked the publish button on the story of the first major piece of software to use KDE Frameworks, Plasma 5.
Plasma is KDE's desktop. It's also the tablet interface and media centre but those ports are still a work in progress. The basic layout of the desktop hasn't changed, we know you don't want to switch to a new workflow for no good reason. But it is cleaner and more slick. It's also got plenty of bugs in it, this release won't be the default in Kubuntu, but we will make a separate image for you to try it out. We're not putting it in the Ubuntu archive yet for the same reason but you can try it out if you are brave.
Three options to try it out:
1) On Kubuntu, Project Neon is available as PPAs which offers frequently updated development snapshots of KDE Frameworks. Packages will be installed to /opt/project-neon5 and will co-install with your normal environment and installs to 14.04.sudo apt-add-repository ppa:neon/kf5 apt update apt install project-neon5-session project-neon5-utils project-neon5-konsole
Log out and in again
2) Releases of KDE Frameworks 5 and Plasma 5 are being packaged in the next PPA. These will replace your Plasma 4 install and installs to Utopic development version.
Log out and in again
3) Finally the Neon 5 Live image, updated every Friday with latest source from Git to run a full system from a USB disk.
Good luck! let us know how you get on using #PlasmaByKDE on Twitter or posting to Kubuntu's G+ or Facebook pages.
Plasma 5.0 is out. I’ve compiled a (non-exhaustive) list of ingredients and that have been put into this release to give the reader an estimate of the dimensions of the project and the achievement of this milestone:
- 46 kilo of espresso (pure arabica)
- The milk of 3 cows
- a Swiss mountain of chocolate
- 140 sleepless nights mulling over code
- 354 liters of pressurized air breathed during scuba dives
- One encounter with a Mantis shrimp
- The total length of 43 bathtubs full of tiger tails fixed in pixel-alignment problems
- 817 hours spent in front of webcams
- 189MB of irc lines written (compressed)
- 80.000 automated builds to keep us in check
- 2403 bugs in the code that had to die
- A swimming-pool full of tears cried over graphics driver problems and crashers buried deep down in scripting engines, scenegraphs and (the pool allegedly was previously used for skateboarding by Greg KH)
- 5 magic wands
- 800 million pixels
- 37843200000 frames rendered
- Too many puppies
- 7 virtual goats sacrificed during a total of 28 full moon ceremonies
- 450 ml of holy water
- 76 rock bands
- 119 beats per minute
- 8 bits alpha channels
- 52 WTFs
- The equivalent of 3 dead trees in recycled paper
- 2 small branches of cederwood for pencils
- 1 box of crayons
Nothing like entirely made-up statistics.
… but also some really hard work, made possible by the sacrifices (see above) of many great people.