This week I put on my computer janitor had and had to install PHP on a new server, which of course turned into a nightmare. Initially I spent a couple of hours trying to get it working, and ran into the following roadblocks:
1) The PHP manual is out of date, to the extent that Windows Server 2008 is not mentioned (come on guys, it’s been out for 3 years). The install instructions refer to files that are literally not present in the distribution any more.
2) All internet guides for installing PHP on IIS are at least one minor version of PHP out of date, since which time the primary files in the distribution have changed. Almost all used windows server 2003, which makes you configure things differently from 2008 – all the switches they tell you to flip are now in different places.
3) A new version of PHP was just released and apparently does not have an installer yet. You can download the zip file, and like it.
4) The method of configuring PHP for your server has changed (“FastCGI” is now recommended over “ISAPI” apparently). All the instructions I found are for setting up the “ISAPI” method, which I’m not sure is even supported any more by PHP. The manual is unclear.
It was basically a huge cluster****, and whoever maintains PHP for windows should be ashamed of themselves. Then I discovered this official Microsoft web site:
It’s almost literally “press button to install PHP”. It worked almost perfectly – everything Just Worked.
Microsoft gets a bad rap for a lot of things, but they did this very well – it automatically checks the configuration file for changes that need to be applied, sets up everything for you, and gives you a nice GUI for messing about. Very impressed!
I upgraded my computer a few months ago, and decided to test c++ build times before and after to see what sort of speed improvement I got. I tested three configurations, all using Visual Studio 2005 with Windows 7:
1. Core 2 duo ~2.6ghz, 4gb RAM, building a project from an SSD
2. Same system, building the same project from a 7.2k rpm hard disk
3. Core i5 2500k 3.3ghz, 8gb RAM, building the same project from an SSD
I did each build twice, one right after a warm boot, and again just after the first build (once everything had been swapped in to the disk cache). Here are the results I got:
1. First build – 96 seconds. Second build – 92 seconds.
2. First build – 96 seconds. Second build – 92 seconds.
3. First build – 54 seconds. Second build – 51 seconds.
In cases 1 and 2 you’ll note that I got exactly the same build times, regardless of whether I was building from my SSD, or the 7.2k RPM drive. So disk speed appears to not be a factor in compiling, at least for hard disks of a decent speed. The change that made the huge difference was going from a core 2 duo to a i5 3.3ghz CPU – so it appears that compilation is CPU bound, and not memory- or disk-bound.
I had been assuming that going from hard disk to SSD would increase speed a bit, but apparently that’s not the case – presumably everything just gets swapped in and after that goes at the speed of memory. It would be interesting to use memory of different speeds to see what effect that had, but that was unfortunately too much work for me to bother with. Maybe next time!
I just checked the whois info for this web site:
Created On:22-Sep-1999 02:00:57 UTC
Apparently I have been on this web site for 11 years! :O Thank goodness I changed the design from the one I made when I was 19, that old one was absolutely horrible.
So Microsoft are apparently releasing Windows Phone 7 soon – it’ll be only on AT&T initially, and cost the same as the iPhone. Not only that, there are apparently 9 different phones releasing, all of which are mostly the same due to the hardware requirements.
I’m sure people will just be aching to buy a Windows Phone 7 when they see it in the AT&T store, without any apps and directly beside an iPhone.
My 3G 32gb iPad arrived last week, and I’ve been playing with it since then. As one of the finest technology reviewers on the internet (?), it’s obviously my duty to let everyone know how I feel about it. Heed my thoughts!
Let’s start with the bad things. First – it’s heavy. OK, not that heavy, it’s only a pound and a half – but honestly, that’s not comfortable for me to hold in one hand. Maybe I just have the brittle wrists of weakness, but I always have to try to rest it somewhere when I’m reading it, instead of holding it up like I would a book. Sad face.
I don’t think there’s anything that Apple can really do about this – from what I hear, the iPad is built from one small CPU and two giant batteries, which give it a 10+ hour battery life. Unfortunately battery technology isn’t improving very fast, so this isn’t one of these “Wait a year and it’ll be fixed” technology things.
I suppose they could replace the CPU with one that only uses half as much power (should be possible in a year or two), then cut the battery size in half. That’s not impossible, but not exactly likely – they might just keep the same battery size, and get a 20 hour battery life instead of what they have now, which would also be good.
Next, it’s kinda small. I honestly don’t know if it’s practical to build a bigger one, but the screen is only as large as half a sheet of paper. I’d love it if it was a bit bigger (say 50% larger in either dimension), but then maybe that’d be too big to carry around, or prohibitively heavy, or too expensive. Maybe we’ll see that version in a few years time?
Lastly, I haven’t really found any *amazing* apps for it yet. I have a neat RSS feed reader, twitter client, PDF reader, and more – they’re all useful, but I could have done those just as well with a cheapo netbook for (literally) 1/3 of the price. It wouldn’t have been as cool, I suppose, and we all know that I am all about cool.
(Peeve: Why doesn’t Hulu.com have an app available? I know all your video is based on flash, but seriously, don’t you think that the millions of iphones and 1+ million ipads out there are worth being on? Get it in gear, please.)
Enough whining. What’s good about it?
Firstly, and most importantly, using the iPad is just generally pleasant. Being able to sit with my feet up, ipad propped on my chest, and read twitter / rss feeds / other poncy web 2.0 things is awesome – for some reason, it’s just much more relaxing to read like that than on my computer.
Also, downloading and installing software is a joy. Want something? Grab it from the app store, it appears, you mess about with it, you delete it, it goes away. Attention OS writers: That is how all software should work. I shouldn’t have to worry about where is going to install, whether it’ll fill my registry with junk, whether it’ll give me terrible viruses, whether it’ll uninstall properly. It should just work. Get with the program.
Text entry is surprisingly good. The on screen keyboard is good enough for almost everything; I wouldn’t want to write this blog post on it, but anything shorter works well. I used it to take notes for a few hours on Saturday, and had no problems at all.
Finally, battery life! 10+ hour battery life is totally sweet, if you do not agree with me, your opinions are wrong.
That’s about all, really. There’s nothing amazing about it; it’s just pleasant to use. My feeling is that in 6 months time, when app development has really ramped up and there are some awesome games & other apps coming out for it, it’ll really be something cool; but by that time, you should just wait for Apple to release the iPad 2.0 next year (as I’m sure they will).
How disappointing; I love gadgets, and the coolest one for a long time makes me think “skip the early adoption phase and just wait a year”. Is that irony? I can never remember.
Most of my readers (all 5 of you) know that I’ve been using Twitter for a while, as @ColenMcA. I signed up mostly so I could try and figure out what this thing was all about – why was everyone talking about twitter? What made it so interesting and cool?
(Dear me, I’m blogging about twitter. This must mean I’ve reached some higher level of nerdery.)
I’ve been on email, IRC, ICQ and MSN Messenger for over a decade, so the concept of communicating with other people over the internet isn’t exactly new to me. But this week, Twitter did a new round of financing, which apparently valued them at $1 billion (yes, billion with a b). Why isn’t IRC worth a billion dollars? Why isn’t MSN messenger worth a billion dollars?
This was all rather a mystery to me. However, today, I read this blog post by e-famous blogger Robert Scoble, a man who twitters and blogs a lot more than I do:
He suggests the following:
Right now I’m staring at an IV machine in the hospital room where our next son will be born. Why couldn’t a doctor Tweet that machine? Using a message that looks something like this:
@sequoia_iv_0451 set level to 1 pt per hour
That would change the drip rate on her machine to 1 pint per hour.
(I’ll ignore the obvious problems with this, such as “can the doctor actually operate a computer”, “what if he makes a typo”, “what if someone sends fake messages to the machine as a joke”, and “what if someone else looks at the twitter feed, thus violating doctor/patient confidentiality”.)
Now, I am totally cool with the idea of people electronically commanding machines. I want to be able to drink 13 double-vodka-and-lemonades at the bar, then message my car to come and pick me up and drive me home. I want to message my air conditioner to turn on before I get there, to cool my apartment down. I want to message my water heater to turn on in the morning, so that I can sit in a hot shower with a splitting headache.
But why Twitter, specifically? Were we mysteriously incapable of electronic communication before it existed? Why couldn’t the doctor have simply used MSN messenger, or IRC, or hell, even ICQ to contact the IV machine? We could have done that 10 years ago. (Imagine being in a hospital ward and hearing all the “uh-oh” noises as the IVs received their new instructions over ICQ, that would be AWESOME.)
Maybe the cool thing about twitter is that all you need is a web browser. You simply go to twitter.com, click in the textbox, and roll your face over the keyboard to send a message to everyone in the entire world. For better or for worse, it’s trivial for you to post something, and it’s trivial for someone else to see that post *instantly*, even if they know nothing about you. That is kinda cool.
But maybe it’s not just interesting because it’s accessible for users. What about software developers?
Let’s say I’m writing some piece of software that needs to communicate with other people, or even other pieces of software. I don’t want to write my own communications protocol, because I’m lazy, so I need to use someone else’s. What are my options?
- I could use a pre-existing instant messenging protocol like MSN Messenger or AIM, or even email. But IM protocols are pretty complicated at best, and anything involving email is going to get spammed to hell sooner or later. Not a good idea.
- I might set up my own web site and upload files to it with FTP. But then I have to manage the web site, and manage the files on it, and pay for web hosting, and ugh, too much like work.
- Or, I could send messages on twitter, by telling my program to visit a URL like “http://twitter.com/statuses/update.xml?user=bilbobaggins&pass=hobbitonrocks&status=OMW to Mordor w/ Sam and the Ring. Wish me luck, guys!”
Which of these is the average developer most likely to do? 90% of his/her day is spent consuming huge amounts of coffee, being screamed at by a manager about “why the HELL this application is late, you’d damn well better be working 100-hour weeks until it gets back on schedule, get this feature in NOW or so help me I’m going to downsize you”, and sending vindictive emails to QA about why the problem they found is a “feature”, not a bug, and so it doesn’t need to be fixed before they release, so GET OFF MY BACK, dammit.
Is John Developer going to implement some sort of horrendous IM protocol into his application? Is he going to spend an hour submitting an expense report for $25 so he can set up a web site, then write the code to upload files to it? Or is he simply going to write one line of code that visits a URL to post a message?
(Hell, based on the research I just did to make this post, I’m now thinking about ways I can use twitter in our own applications.)
So, twitter is easy for users, and it’s easy for developers. It all runs off a single web site, so there’s no need for any other infrastructure – just a working, low-bandwidth internet connection. If you want to do the simplest thing that works, you use twitter.
Perhaps that’s what makes it special – these days, anything that simple should be treasured.
For a long time I’ve heard good things about Dell, and about their customer service for business machines. Assuming you paid a bit extra to skip the basic “people who can’t speak English” level of support, they would take care of whatever problems you had with stuff.
Based on this good track record, Management and I have bought a lot of stuff (laptops etc) from Dell over the last few years. We had the chance to put their service to the test recently when Management damaged his laptop – which happens to be his main development machine – on a flight back from Indianapolis. No problem – the level of support he paid for meant that Dell should have sent out a tech the next business day to fix the laptop. Great.
However, because of the circumstances of the incident (the bag the laptop was in fell over), Dell required that the laptop be sent to their central depot for repair. This was to make sure the damage really was accidental – apparently their techs are incapable of working this out themselves? Whatever – Dell said it usually took a week or two to fix the laptop and send it back, which was ok, he had stuff to do for that time and could use an old machine instead.
Management sent his laptop off, in a box that Dell supplied, with 2-day Fedex shipping. 7 days later, the laptop arrived (thanks Fedex). Then, the box sat around for a week in Dell’s depot without even being opened. This took them up until Friday – 2 weeks after he sent it off. Don’t worry, said the Dell phone support – it only takes them 1-2 days to fix something once they open it, and we’ll overnight it back to you once it’s finished. We’ll call you on Tuesday to let you know what’s happening. Fine, that’ll be great.
No phone call on Tuesday. Management calls up again – apparently the laptop needs a new video card, but they don’t have any! And said video cards won’t be in stock again for several weeks! So not only have you been sans laptop for almost a month, you’re not getting it back for another few weeks, until a new shipment of video cards arrives on the boat from Taiwan or wherever!
But don’t worry – we’ll fix you up with a refurbished laptop and stick your hard disk into it so you can get back to work. It’ll only take, oh, about 2 weeks to build it and then ship it off to you. So don’t worry, you’ll have [b]a[/b] laptop back in a couple of weeks time.
tl;dr: Appalling service from Dell leaves Management without his laptop for over a month. Chances of me buying further computers from Dell approach zero. I guess I might as well just buy a cheap Acer machine or something if I need one – and if my current laptop goes wrong, tell dell it “just stopped working” in case they give me the runaround like this.
A cunning trick I discovered today. To suppress error reporting for a command in a makefile, prepend it with a dash character. For example, this command will fail and stop the build if the directory already exists:
However, this command will ignore the error and press on – perfect if you don’t care if the directory is there or not, you just want to make sure it gets created:
The only change is the addition of a dash at the start of the line.
(This doesn’t change the fact that makefiles are horrible and that I hate them.)
Bad Scorponok, never updating any more, etc.
Hopefully people are using RSS feeds to view this, so they actually see that I’ve written something. So what have I done in the last year? Let’s see…
- My apartment is now even more of a mess than it was, although I’m starting to clear off my desk at least. Receipts and papers are being categorised and organised.
- My US work visa ran out, and I switched to a different visa with the help of my ex-boss, some friends, and an immigration lawyer. This involved writing a 40-page business plan and starting my own business. Yuck. Hey, at least I didn’t get deported!
- I got my tax stuff sorted out. This had two sub-steps: 1) Start own business, do nothing, worry for 6 months. 2) Pay accountant to do taxes. Next year I plan to skip step 1 for efficiency.
- I visited my family and friends in the UK twice, once in January and once in July. It was nice to see everyone, as usual. Unfortunately with my current visa, I can’t leave the US for a while (long story). Hey, at least I save on air fare.
- At work, I finished 2 major projects and muddled through on a bunch of other stuff. I’m really proud of the Mutants & Masterminds game system for Hero Lab – it’s selling really well and I honestly feel that it’s delivering a great user experience to the people who buy it. (Obviously Management helped a lot, and I couldn’t have done it without Green Ronin’s support either.) The other stuff worked out ok, but I don’t feel like I gave them everything I could have.
- Planned out some new features for our next major project (Army Builder 3.2) on the horizon; that’s a much-needed upgrade, as it hasn’t had an update for too long. When I sat down to look at possible improvements, there were so many obvious places that could be changed. Pretty amazing.
- Played too much World of Warcraft. Enough said.
So, work-related stuff. I feel a little like I’ve been in… freefall almost for 2008. It’s interesting because I definitely feel like I’ve “added value” to the company by doing my work, but it always feels like doing the more “interesting” solution would take too much time / be harder than doing the other one. Maybe I’m looking for trouble? Not sure yet – we will have to see what this year brings.
In the last few months I’ve also started getting distracted very easily from stuff – it’s really hard to focus on things, and I find that I go off and start reading forums / blogs at the drop of a hat. Hopefully it’s just the sameness of work getting at me, which will be less of a problem this year; alternatively, I’ve contracted ADHD from spending too much time on the computer. Ritalin prescription, here I come!
And then of course there was the visa – thank goodness that’s all done with, because it was keeping me awake at night.
Personal life. I don’t feel like I really got anywhere in 2008. Part of that was because I spent a lot of time trying to distract myself from the visa stuff, and wasn’t really interested in original thought; part of it was just my addiction to World of Warcraft. Now, I’m honestly not sure what else I’d be doing if I wasn’t playing WoW so much; I’d be spending money on other computer games, watching more TV, etc. I just can’t think of anything else I want to do.
Maybe I’m simply reaching unprecedented levels of laziness? Is this some sort of biological mechanism that’s intended to make you settle down and have children, because you’re not doing anything else? What a horrible thought…
So I’ve been using Vista on my new development machine for a couple of days, after spending the entire weekend getting it set up (ugh). Here are the good things about it so far:
- Breadcrumbs – In explorer, it shows that you’re in “c:\Xxx\Yyy\Zzz” as before, but if you click on “Xxx” it switches to that directory. You can also switch between directories by clicking between them. Overall: Excellent.
- Search ‘as you type’ – just like find in firefox, where there’s a little bar at the top of the explorer window and it filters the list of files as you type into it. Wonderful.
- Start menu keyboard support – hit the windows key and type the first few letters of a program name, and that program runs. It’s like Windows+R on steroids.
- When you hit F2 to rename a file, it selects the filename but NOT the file extension. Oh, this is so nice.
- Windows Aero is very pretty, and the start menu looks nicer.
- The new volume control (with a separate control for each application!) is awesome, and the new clock is very pretty. You can also set up multiple clocks to appear, for different time zones etc.
Bad things so far:
- iTunes bluescreens my machine when I try to import my song library. Waah!
- Apparently I can’t use my geforce 5500 as a secondary graphics card now? It also bluescreened my machine when I tried it.
- Visual studio 2005 doesn’t install properly and needs a patch to work, and complains when you run it. Get with the program, microsoft – can’t you get your flagship IDE working properly on your new OS?
- User Access Control (or whatever it’s called) is annoying sometimes – why should I have to press “continue” 4 times when creating a folder and renaming it? Stupid.
So some good, some bad. However, almost all the good things… those aren’t really “woah we need a new operating system for this!” features. They could easily have been added to windows XP.
The jury’s still out… hopefully service pack 1 will improve things.
« Previous entries Next Page » Next Page »