From Cimota.
cat ~/.zshist | awk '{a[$1]++} END {for(i in a)print a[i] ” ” i}’ | sort -rn | head -10
2870 ls
2444 cd
659 vi
348 rm
254 svn
232 ssh
206 telnet
182 whois
180 egrep
179 sudo
From Cimota.
cat ~/.zshist | awk '{a[$1]++} END {for(i in a)print a[i] ” ” i}’ | sort -rn | head -10
2870 ls
2444 cd
659 vi
348 rm
254 svn
232 ssh
206 telnet
182 whois
180 egrep
179 sudo
“Hundreds of observers saw the flame that night and the night after about midnight, and again the night after; and so for ten nights, a flame each night. Why the shots ceased after the tenth no one on earth has attempted to explain. It may be the gases of the firing caused the Martians inconvenience. Dense clouds of smoke or dust, visible through a powerful telescope on Earth as little grey, fluctuating patches, spread through the clearness of the planet’s atmosphere and obscured its more familiar features.”
Chapter One “The Eve of the War” – The War of the Worlds, by H. G. Wells
Roughly two years after the arrival of Martians on Earth, a second series of ten “shots” are fired from the surface of the red planet. Is this another invasion? Was the first invasion actually that, or was it just a scouting mission? Now that we have had two years in which to come to terms with such technology has been left behind, will that make it any easier for us to communicate with inter-planetary cousins?
The Second Launch is a set of ideas, guidelines and scenarios for GMs to allow them to generate that same sense of wonder, awe and terror that the original landings created. Here are some questions that will be answered:
Originally written for lategaming.com.
Bear with us while we engage in some site jiggery-pokery. Those of you who subscribe to the feed shouldn’t notice any difference. Also it’s a bit harder to tell who wrote what post at the moment, but that’s OK by me – it makes it look like I’ve written more!
Originally written for lategaming.com.
“Capitalism is the astounding belief that the most wickedest of men will do the most wickedest of things for the greatest good of everyone.”
The period following the end of the Second World War saw a time of huge change for the world. With peace restored, people felt it was safe to start a family again and the so-called Baby Boom ensued. Necessity had opened the door to the working woman and the signs of economic growth and prosperity were everywhere: jobs, families, houses and of course companies.
It was during this period that the Powers came into existence. During the war, several companies had assisted the government in their research into psychics. With the war over and military spending slashed, some of the brighter minds within the Projects turned to their colleagues in the private sector for work. Many of these companies went back to their original lines of business, but a small number continued their work in psychic research, providing lab-space, equipment and, most importantly, funding for teams of scientists determined to uncover the secrets of the psychic brain.
Many of these teams were shut down: after all, if a business unit cannot make money or shows no sign of being able to make a return, they are often the first to lose out in the annual budget rounds. But a few did well enough, through a combination of luck, brilliance and hard work. It was these few which eventually developed into the Powers of today.
With Government observation at an all time low, individual companies were able to relax safety protocols, test more subjects and in some cases expose entire communities to programs of drugs, psychic manipulation and selective breeding, all in an effort to produce more of what they desired most: power. Those companies who decided to take a more humanist approach to their research were quickly made obsolete, taken over or destroyed by rivals.
Were it not for the Cold War with Russia providing much of the cover, the Projects may have been able to stop the development of the Powers before it was too late. As it was, the governments of the NATO and Warsaw Pact nations were too concerned with each other to worry about what was going on in their own backyards. A blend of ruthlessness, subterfuge, assassination and recruitment kept the Powers safe while they accumulated wealth and knowledge.
In the mid-Eighties, with the Cold War winding down, the Projects finally started to take notice of the Powers and what they were doing, but it was already too late–the Powers were well entrenched, hidden, knowledgeable and above all, powerful. Weaker Project espers investigating suspected Power activity while stronger ones were made exorbitant offers to turn coat. In turn, the Projects gave more leeway to their operatives, living by the old adage of the end justifying the means.
This vicious circle continued until late 1987, specifically October 19th, also known as Black Monday. On that day, a well coordinated team of espers, working for Interra Holdings, used their abilities to bring about the largest one-day crash of world stock markets. Interra profited considerably from the crash and, somewhat unsurprisingly, all of their competitors lost out, some to the point of bankruptcy. Up until this point, the Powers had generally left each other alone, content to work on their own research and with their own teams, and occasionally to work together to common end. Black Monday opened up the floodgates.
Three things happened. Firstly, the larger Powers inflicted retribution on Interra. The Projects (and even the Press) reported astonishment at how quickly things like lack of sleep, paranoia, dyslexia and even the odd psychosis did to the mundane staff at Interra. Combined with a few well placed fires, blocked water mains and so forth and eventually Interra stock became junk. De-listing and bankruptcy followed shortly thereafter. The majority stockholders of the company turned out to be the same esper team who had cornered the market–they and their profits vanished without trace before any Power ever came near.
Secondly, Powers turned on each other. No longer seeing each other as potential allies against the Government, the Powers effectively eliminated each other, through legitimate means such as mergers and acquisitions, alongside shadier ones. This consolidation continued through the Nineties, and with the rise of globalization, the handful of remaining Powers settled into an uneasy acceptance of each other. Their activities became a lot harder to track, but their effects became a lot less prominent, and so the Projects eased off on the manpower dedicated to Power containment.
Thirdly, at around about this time, the first recorded Network cells sprung into existence. Up until this point, espers either worked for the Projects or the Powers–one of the two was considered safe haven. Whether or not Black Monday itself was a direct cause of the creation of the Network is unclear. The escalating violence between Projects and Powers alienated a lot of people, and when Powers turned on each other, people needed a place to go.
From the turn of the millennium, the Powers have evolved into what they are today–legitimate businesses, making lots of money in many countries, but with a hidden and darker purpose.
Originally written for lategaming.com.
Tom Spina Designs (via therpf.com) show us what you can get if you have expensive and sci-fi tastes.
http://www.therpf.com/showthread.php?t=39500
Originally written for lategaming.com.
Here’s the scenario: you’re writing a green field web application. This application will be used to power more than one e-commerce site, which means that it must be easily tailored. You can use any toolset you like, and the requirements are fairly standard (e.g. exporting data to CSV, modern UI, payment gateway, etc.). What do you choose?
So, it seems you’ve got three options (anyone think of a 4th?). Of course within each of these options there are any number of competing solutions, especially in “build your own”, where you could potentially use any language, web server, etc.
I think with any software developer, the preference is to build one’s own. That way you get ultimate flexibility and intimate understanding of the code, which makes it easier to expand and customise. The downside is that you have more work up-front in order to get running.
Off-the-shelf (i.e. commercial) software tends to have a lot of features that your accountant and fulfillment department would like, and often gives you the ability to customise using one of a few popular languages or their own pseudo-language. The real advantage is that you can have a store quickly, or so you might think. Often, shoe-horning your data into their proprietary and closed-source format makes this option longer and more expensive than building it yourself.
All of which leaves open-source engines. You can be up and running quickly (like with commercial apps) but you have access to the source code if you decide you need to change things the way you want them. Potential downsides are lack of support and lack of particular features you might need (e.g. a particular payment gateway).
So, which would you choose?
This can be as horrible and hackish as needed. I regularly hardcode things like URLs, integers, strings, file names/paths: whatever is needed just to show that the idea works. E.g. for Rickshaw, I started off by always sending a file called rickshaw.png, which just got removed and replaced by a URL – the URL in the e-mail was hardcoded to be a reference to http://localhost/~aidan/rickshaw.png, and I happened to have the file in that directory. The whole workflow appeared to work, even though none of the upload magic was there. I proved out two concepts though:
This can be harder than you think. Not the writing, but choosing what bit is the next most important. For me, I wanted to have that file be written dynamically. The important thing is to keep it small – do it, test it and be happy with it. Some things lend themselves to automated testing: some don’t. I’m a fan of test-driven development, but I don’t get hung up on ensuring coverage – look at Microsoft Windows Vista: excellent automated test coverage, crappy user experience. Test manually where it makes sense, and automatically where needed.
You go from your tasks being “remove hardcoded URL and replace with URL generation code” to “Add application icon” and “Build website to sell app”. One step at a time, doing the most important thing at any given time.
Rickshaw had no user interface for quite some time – it was just a plug-in that was copied from the command line. Eventually that was good enough that a UI for configuring it was the most important thing. Then a button that tested the configuration before using it. Then some code to install the plug-in. License keys. Usability enhancements. And so on.
None of this is new or original – it’s all common sense, especially if you’ve worked in an agile development team before. The great thing about working this way is you see results early on. I had a working prototype of Rickshaw which did “uploads” to localhost (using NSData writeToFile:atomically) within a week, and real uploads within three weeks. The downside is that you feel very close to finishing at an early stage.
If you consider the entirety of what’s needed to build an app as being 100% of the effort, I’d lay out the effort required for different parts as something like this:
Open source projects are one of the first three stages (corresponding roughly to ‘alpha’, ‘beta’ and ’stable’ projects). The last stage takes just as long as the first three, and it’s the reason why commercial Mac apps (in particular) are better than open source apps for Linux – as much time has been spent getting the application to work well for users as has been spent getting the application to work for the developers.
If you’re developing an app for any platform, ensuring you spend the time in that last stage is what will make your work stand out.
The 7th Ironcoder contest was announced today (for some definition of today – damn those pesky time zones). I think this year I actually feel confident enough to take part, even if I accomplish not very much
For those who have no idea what it is, each contest selects a theme and Mac OS X API, then gives you 48 hours (real time) to write an app that has both theme and API centrally featured. Check out the Ironcoder site for more info, or take a look at the entries for Ironcoder 5.
Here’s a quick preview of the product I’m currently working on. It’s called Rickshaw and it’s designed for people who like the convenience of sending (large) attachments via e-mail. Using Rickshaw your attachments are stripped from the mail as it is sent and uploaded to your designated server. The attachment is replaced with a URL that allows the recipient to just download what you sent at their leisure.
This product is primarily aimed at people who have to work with large files and need to send them to multiple recipients – avoiding issues with mailbox quotas, mail server file size limits or file type restrictions and so on. More details about how to use the product will follow, but here’s a quick video showing it in action.
Enjoy! (also available as a QuickTime movie)
There’s been a lot of traffic on the MacSB mailing list and on various blogs (e.g. Panic and Atomicbird) about how Apple is handling the release of Leopard in the same way as they did with Tiger, and about how indie developers get the short end of the stick because we don’t see Leopard until our customers do.
I think this is all just jitters. The people who rush out and by Leopard on day 1 are all early adopters – they have the “bleeding edge” gene anyway, and will understand if it takes a week or two for their favourite app to work correctly. Sure, things will change between the last seed and what’s shipped, but it’s not going to be anything major. And yes, your apps might break within the first few days of Leopard being released. But realistically, if you’ve run your app on the seed at all, I find it hard to believe that it will take long to get it working against the release version.
The other main concern is that developers who get the software as part of their ADC membership don’t get it the same day the general public gets it. Yeah, that’s a bummer but it’s not really that big a deal. Chances are good your software will work as intended, and if it doesn’t, it’s only a few weeks’ wait.