Second chances in space missions are exceedingly rare. When something goes wrong it often means either a total loss of the mission or a significantly reduced outlook for what the mission can accomplish. Primarily this comes down to the tight engineering challenges that space missions face, with multiple redundant systems only able to cope with so much. Still every so often they happen and sometimes a new mission is born out one that might have been a failure. Such is the story of JAXA’s Akatsuki craft, one that has been lying in wait for the last 5 years waiting for its chance to fulfill its mission.
Akatsuki launched 5 years ago aboard JAXA’s H-IIA rocket. It was to be JAXA’s second interplanetary probe after their first, Nozomi, failed to reached its intended destination over a decade prior. The insertion burn was confirmed to have started on schedule, however after the communications blackout period where the probe was behind Venus it failed to reestablish communications at the expected time. It was found drifting away from Venus in safe mode, indicating that it had undergone some form of failure. In this state it was operating in a very low bandwidth mode and so it took some time to diagnose what had happened. As it turned out the main engine had fired for only 3 minutes before failing, not enough to put it in the required orbit.
However it was enough to put Akatsuki on a leading orbit with Venus, one that would eventually bring it back around to meet the planet some time in the future. It was then decided that JAXA would attempt recovery of the craft into a new orbit around Venus, a highly elliptical orbit with a period of almost 2 weeks (the originally intended orbital period was approximately 30 hours). Investigation into the craft’s damaged sustained during the first initial burn showed that the main engine was unusable and so the insertion burn would be performed by its attitude thrusters. JAXA had a lot of time to plan this as the next scheduled rendezvous would not happen for another 5 years.
Following some initial maneuvers back in July and September Akatsuki began its orbital insertion burn on the 7th of December. The small attitude thrusters, designed to keep the spacecraft oriented, fired for 20 straight minutes far beyond what they were originally designed for. They did their job however and 2 days later JAXA announced that they had successfully entered orbit around Venus, albeit in the far more elliptical orbit than they originally planned.
The extended duration in space has likely taken its toll on Akatsuki and so JAXA is currently undertaking a detailed investigation of its current status. 3 of its 6 cameras have shown to be fully functioning with the remainder scheduled to be brought online very soon. Scientific experiments using Akatsuki’s instruments won’t begin until sometime next year however as an orbital correction maneuver is planned to reduce Akatsuki’s orbit slightly. However JAXA is confident that the majority of their science objectives can be met, an amazing boon to both their team and the wider scientific community.
It’s incredibly heartening to see JAXA successfully recover the Akatsuki craft after such a monumental setback. The research conducted using data from the Akatsuki craft will give us insights into why Venus is such a strange beast, rotating slowly in opposite direction to every other planet in our solar system. Whilst I’d never wish failure upon anyone I know the lessons learnt from this experience will bolster JAXA’s future missions and, hopefully, their next one won’t suffer a similar fate.
Ever since getting things into orbit became a routine task the amount of stuff we’ve left floating around us in space has increased exponentially. Typically the debris that surround us are made up of the upper stages of rockets, disused satellites that can’t/won’t de-orbit for some time and, worst of all, innumerable other bits of miscellanea that are the result of things crashing into each other. This is the beginnings of a terrible self inflicted disease called Kessler Syndrome whereby the lower orbits are so littered with junk that launching anything becomes nigh on impossible, save for some drastic changes in technology. Thus it’s in our best interests to come up with some workable solutions to this issue and the engineers at the Japanese Aerospace Exploration Agency (JAXA) have come up with a very interesting solution.
Whilst most of the debris surrounding Earth will eventually make its way back down the time frame in which it will do so varies from years to centuries. Since the orbits are unstable it’s likely that they’ll change drastically over time and this means that the chance that they will collide with another bit of debris increases quite dramatically. This is the real crux of the issue as collisions of this nature create much more debris than their individual parts alone (it is also why all the collective space faring nations were a rather pissed at China for testing their anti-satellite missile). Whilst there’s not much we can do for the numerous small bits of debris orbiting Earth there’s a lot we can do for a specific type of space junk, specifically the upper stages of rockets, and this is what JAXA’s latest development targets.
The team at JAXA’s Innovative Technology Research Center have devised what they’re calling an electrodynamic tether to help combat the space debris issue. It consists of a small space craft, one could imagine something of cubesat size, that attaches to a large piece of debris via a long electrically conductive tether. Then, by virtue of the fact that Earth has a magnetic field and the tether is conductive, Lorentz forces then act to drag the two satellites back down to Earth. It’s a rather ingenious way of getting the junk to deorbit as it doesn’t rely on carrying massive amounts of propellant, making the craft infinitely smaller and far more efficient. It might only tackle a specific subset of the debris in space but their calculations show that this should be enough to prevent a runaway Kessler syndrome situation.
Probably the coolest thing about it, at least for me, was the preferred way of attaching the tether to the target. They have explored some regular options, namely coasting up to the craft and attaching it with a robotic arm, but since their targets are going to be the usually thin walled upper stages of craft they’re instead opting for a harpoon that will penetrate the hull of the craft. So in the future we could have a swarm of harpoon carrying cubesats orbiting us, ensuring that any large bit of space junk is brought to the fiery demise it so rightly deserves.
Of course this doesn’t mean the problem is completely solved but this could be enough of a stop gap solution whilst we figure out better ways of cleaning up our lower orbits. It’s not going to be an easy problem to solve, the energies required to get everything up there in the first place ensure that, but things like this show that there are highly efficient ways of dealing with it. All that’s required is for us to find them and, hopefully, deploy them before its too late.
Games without a specific point and I don’t tend to mix very well. I mean we start off well, usually as I follow the main story line, but once there’s a lull I tend to start wandering off in random directions with a trail of destruction in my wake. This is Jerk Mode, the point in which I feel the current game has run its course and all that’s left for me to do is to make every NPC’s life in there a living hell. Many argue that this is the point of these style of games, you can make your own fun in it without having to feel obligated to play it a certain way, but for me once I hit that point that’s it for a while. Of course games that encourage you to do crazy things, like Kerbel Space Program does, tickle me in just the right way and since it’s all about space you know there was no way I was going to pass this up.
As I alluded to earlier Kerbal Space Program has no specific goal set out for you (unless you do a scenario), instead you’re given an unlimited budget and parts drawer from which you can create a wide variety of craft for launching your little green men into space. You could say the goal is to do this successfully without blowing them up and indeed whilst it is fun to send wave after wave of green men to their fiery deaths eventually you’ll tire of it and set your eyes on goals that are quite challenging to achieve. Even once you do that you’ll think of other things to challenge yourself and down the rabbit hole you’ll go.
Kerbel Space Program isn’t much of a looker, that’s for sure, but what it lacks in the visuals department it makes up for in spades with its simulation accuracy and wonderful background music. I make special note of the music because it’s eerily familiar to other simulation style games, particularly the ones from Maxis like The Sims and SimCity, which gives it this….air about it. It’s hard to describe but it just makes building a spaceship fun (although to be fair that’s fun regardless).
There’s a couple short tutorial missions which I’d say are required for you to be able to grasp the basics as otherwise you’re just going to flounder around for hours while you wonder why your spaceship isn’t functioning like it should. It won’t teach you everything. indeed there’s a level of nuance to this game that you probably won’t appreciate until you’re on your 20th ship, but it’s enough for you to start experimenting with various designs. Additionally it gives you the run down on basic orbital mechanics, something you’re going to want to be familiar with after you get bored of making huge explosions.
The breadth of ship building components is really quite impressive with nearly all the different kinds of components I’d expect to see in a rocket engineer’s dream workshop. Thus the number of different rockets, space planes and other vehicles you can create is nigh on unlimited and depending on how you building them they’ll all have different capabilities. Initially I simply went for the good old fashioned Russian method of strapping as many of them together as I could, which works well to a point, but after a while I started to refine my designs until I started coming up with things that got the same result without resorting to things that made the simulation engine fall in a screaming heap (which happens when you do things in a really retarded way).
Now since there’s no explicit goal there’s really no penalty for failure which can lead you to try all sorts of weird and wonderful things to try and achieve the goals you’ve set out for yourself. I personally stayed within the realms of emulating current production launch systems, at least when I wasn’t deliberately trying to cause explosions, which seems to be one of the best ways to go about it. Checking out the community pages though reveals many weird and wonderful designs that are all quite functional, indeed some far moreso than any of the ones I’ve created. Most of my monstrosities ended up being too big for their own good, usually falling apart before reaching the Karman line, but I eventually managed to settle on a good design, one that started to take me places.
There’s few games out there that give you that true sense of accomplishment, you know where after completing an objective you feel like you’ve actually achieved something. Getting a craft into orbit sounds like an easy thing to do in Kerbel Space Program, I mean heck you can strap as many boosters together as you want, but therein lies the rub: brute force probably isn’t going to get you there. No in order to achieve something of that greatness you’re going to have to refine and finesse your design until you reach the point where you’re just able to make it. Once you do that however, things start to get a little crazy.
You’ll think that once you’ve gotten into orbit that you’ve done most of the hard work and from here it’s pretty easy to get to anywhere else should you have the desire. From an energy point of view this is correct, once you’re free of the gravity well the energy required to move yourself around is greatly decreased. However the first time you make it into orbit it’s quite likely you won’t have any fuel to do anything and even if you do trying to get into a proper transit orbit will likely see you on a trajectory headed into interstellar space rather than the nice transit orbit you hoped for. Of course you’re only a couple clicks away from trying again but it’s really easy to get attached to those craft that have made it to where they are.
Of course I’m only talking about a very small sub-section of the game as whilst getting into orbit and transiting around is all well and good there’s also a swath of other things you can do like landing on other heavenly bodies and launching robotic explorers and satellites. I have to admit I haven’t had a chance to try these out, I was heavily focused on getting into Mun orbit, but jut the fact that the components are there, waiting to be used tells me there’s so much more to Kerbel Space Program than you see at first glance. This is also not counting the modding scene which seems to be incredibly healthy.
Kerbel Space Program is still in alpha and so there’s bugs at every corner but since its still in development I can’t really fault them for that. Indeed it’s part of the charm as whilst it does a good job with orbital mechanics and the varying bits of rocket construction sometimes your ship will do things that just aren’t what you’d expect. Usually its emergent behavior from the interaction of so many different components which can lead to all sorts of strange things happening. I’m sure as time goes on many of these kinks will be worked out as reading long time fans of Kerbel Space Program shows the game has come quite a long way since it was first released into the world.
Kerbel Space Program is one of those awesome little gems where the quirks are what make it fun to play but the nuances of challenges it presents to you are so vast that it will take a lot of time to master. Your friends might not understand why it’s such a big deal that you got into Mun orbit, nor why your 2 stage launch system is a marvel of engineering, but you will and all of us fellow Kerbers will too. I’m far from done with Kerbel Space Program, indeed this is a game that I want to watch grow as it goes from plucky indie alpha to (hopefully) a fully fledged rocket building and launching simulator. It’s not for everyone, that’s for sure, but if you’re even the slightest bit curious about it then you know what you need to do.
Rating: withheld due to alpha status.
Kerbel Space Program is available on PC right now for $20.69. Total time spent playing was approximately 5 hours.
Even with the proof behind it I still have no idea how the motion in this video works:
There’s 3 distinct angular motions going on but the seemingly discreet switch from one particular state to another (and the transition between them) really baffles me. It’s incredibly cool but thoroughly puzzling.
To celebrate the Luna Reconnaissance Orbiter being in orbit around the moon for 1000 days NASA has celebrated by releasing not 1 but 2 very cool videos about the moon. The first is probably my favourite of the two, depicting the violent birth of our closest heavenly body:
The second is equally as cool though showing (in incredible detail) what the moon looks like today:
The USA has always been wary of China’s ambitions in space and I believe it’s mostly for all the wrong reasons. Sure I can understand that the fact that China’s space division is basically a wing of its military might be cause for concern, but the same could be said for the fact that the USA’s Department of Defense’s budget for space exploration exceeds that of NASA’s. Indeed the USA is worried enough about China’s growing power in space and other industries that there’s already been speculation that it could spark another space race. Whilst this would be amazing for a space nut like myself I really wouldn’t wish that kind of tension on the world, especially when the USA is struggling as much as it is right now.
Of course that tension is enough to spark all sorts of other speculation, like for instance the true nature of the mysterious X-37B’s mission. It’s payload bay suggested that it was capable of satellite capture, an attribute shared by it’s bigger cousin the Shuttle, but its previous orbits didn’t put it near anything and it didn’t really have enough delta-v capability to be able to intersect with anything outside a few degrees of its own orbit. However since then there’s been a couple launches and one of them is smack bang in the X-37B’s territory.
The craft in question is none other than China’s Tiangong-1.
Yesterday the BBC ran an article that speculated that the USA was using the X-37B to spy on Tiangong-1. Now initially I dismissed this as pure speculation, there are far easier ways for the USA to spy on a satellite (like using one of their numerous other satellites or ground based dish arrays) than throwing their still experimental craft up in a chase orbit. However checking the orbital information for both Tiangong-1 and the X-37B shows that they do indeed share very similar orbits, varying by only 0.3 of a degree in inclination and having pretty similar apogees and perigees. Figuring this is the future and everything should be a few Google searches away from certainty I set about finding out just how far apart these two satellites actually are to see if there was some possibility of it being used to spy on China.
To do this I used 2 different tools, the first being n2yo.com a satellite tracking website. This site allows you to input the satellites you want to track and then displays them on a Google map. Once I have that I can then use another tool, this time from findpostcode.com.au which shows me the distance between two points (which thankfully also takes into account the fact the earth isn’t flat). So firstly here’s a picture of the two orbits overlapped:
So as you can see they do indeed share very similar orbits but there does seem to be an awful lot of distance between them. Just how much distance? Well the second picture tells the full story:
Just over 14,000KM which is greater than the diameter of the earth. What this means is that if the X-37B was being used to spy on Tiangong-1 it would have to peer through the earth in order to see it, something which I’m pretty sure it isn’t capable of. Also if you look at the first picture you’ll also notice that Tiangong-1 actually passes over the USA as part of its normal orbital rotation, putting it well within the purview of all the ground observations that they have control of. I’ll note that the distance between Tiangong-1 and the X-37B won’t remain constant, but they will spend a good portion of their lives apart. Enough so that I don’t believe it would be particularly useful for reconnaissance. Additionally unless the USA knew which orbit that Tiangong-1 was going to use (possible, but we’re getting deeper into conspiracy territory here) then technically Tiangong-1 launched onto the X-37B’s orbit and not the other way around (it has not changed its orbit since the second launch, unlike it did the first time).
Honestly the idea that the USA was using the X-37B was definitely an interesting prospect but in reality there’s really no justification apart from conspiracy theory-esque hand waving. The USA has far better tools at their disposal to spy on China’s fledgling space industry than a single run experimental craft that’s only on its second flight. The orbits also put them at a fair distance apart for a good chunk of the time (as far as I can tell, at least) as well making it even less likely that the X-37B is being used for spying. Still it was an interesting idea to investigate, as is most things to do with the ever mysterious X-37B.
Maybe it’s the combination of mission secrecy and close resemblance to the now retired shuttle fleet but the X-37B seems to get more press than any other space craft currently flying in orbit. When I first saw the diminutive shuttle cousin back in April last year I figured it was just a unique experiment that the Department of Defence was carrying out and the rumours about it’s satellite capturing capabilities were greatly exaggerated. Indeed towards the end of the mission I investigated the idea that it was already performing such a task but based on the current trajectories of other satellites it didn’t seem like that was the case. The X-37B blasted off once again at the start of this year again shrouded in mystery as to what its actual mission was and it’s been up there ever since.
That last fact is interesting as the X-37B’s stated capabilities put it at being on-orbit for a maximum of 270 days. The deadline for its return to earth would have then been around November 30th, a date that has well past now. The United States Air Force has stated that its mission has been extended and it should be on orbit for a while to come. This is interesting because it tells us that the X-37B is a lot more capable than they’ve state it is. Whilst this could just be good old fashioned American over-engineering it does lead some credence to the theories that there’s a whole bunch of capabilities hidden within the X-37B that aren’t officially there.
What’s been really interesting however are the discussions surrounding a potential manned variant of the X-37B. As it stands the X-37B is quite a small craft, measuring a mere 10 meters long and a payload bay that’s only got a few cubic meters of storage space. Overall its very similar in size to the Soyuz craft so there’s definitely some potential for it to be converted. Rumour has it that the X-37B would be elongated significantly though, bringing its total length up to 14 metres with enough space to sit 7 astronauts. Granted it wouldn’t be as roomy as the shuttle was (nor could it deliver non-crew payloads at the same time) but it would be a quick path to restoring the USA’s manned flight capability. That would hinge on the man rating Atlas V launch system which is currently under investigation.
It’s not just space nuts that are getting all aflutter about the X-37B either. China has expressed concerns that the X-37B could be used as a orbital weapons delivery system. The secrecy surrounding the actual mission profiles that the X-37B has been flying is probably what has prompted these concerns and it being under the sole purview of the Air Force doesn’t help matters. In all honesty I doubt the X-37B would be used as a weapons platform since it’s more of a generalist/reconnaissance craft than a weapons platform. If there’s someone you want to worry about launching weapons into orbit it would be the Russians as they are the only (confirmed) nation to have launched armed craft. A dedicated weapons platform would also look nothing like the X-37B, especially if it was going to be designed for on-orbit combat (who needs wings in space?).
The next couple months will give us some more insight as to the true purpose of the X-37B. It’s quite likely that these first couple flights have just been complete shake downs of all the systems that make up the X-37B with the first flight being orbital manoeuvring verification and the current flight being an endurance test. Should it stay up there for a significant amount of time it’s more likely that it’s some form of advanced reconnaissance craft rather than something crazy like a satellite capturer or orbital weapons platform. The prospect of a manned variant is quite exciting and I’ll be waiting anxiously to see if the USA pursues that as an option.
Pushing the envelope of capabilities in space is a slow and arduous task where small step after small step eventually makes its way to the ultimate goal. Even with today’s technology it still takes us the better part of a decade to go from concept to reality, especially if you’re trying to build launch capability from scratch. Hell even my current crush, SpaceX, has taken 10 years to get to the stage they’re at and that’s considered blindingly fast even when you compare them to the superpowers of the world. China on the other hand has proven themselves to be extremely capable, innovating at an extremely rapid pace.
So rapid in fact that I was sure I had already covered their most recent accomplishment, docking Shenzhou 8 with Tiangong 1:
China’s technological capabilities took a major surge forward with the successful docking in space today for the first time ever of two Chinese built and launched spaceships – orbiting some 343 kilometers in the heavens above at 1:37 a.m. Beijing time Nov. 3(1:37 p.m. EDT, Nov. 2). China’s goal is to build a fully operational space station in Earth orbit by 2020 – about the time when the ISS may be retired.
Today’s space spectacular joining together the Shenzhou-8 unmanned spacecraft and the Tiangong-1 prototype space station was an historic feat for China, which now becomes only the 3rd country to accomplish a rendezvous and docking of spacecraft in Earth orbit.
In fact the last thing I wrote was just over a month ago when China had successfully launched their Tiangong 1 prototype. In that time they managed to prep, launch and have Shenzhou 8 rendezvous with Tiangong 1 putting China on par with the small number of nations who have developed such capability. Over the next couple weeks Shenzhou 8 will un-dock and re-dock with Tiangong 1 in order to prove that the technology is solid. Once the mission has been completed Shenzhou 8 will return to earth for further analysis.
Launching two separate vehicles rapidly one after another is par for the course of any space program but what really surprised me was China’s plans for the next 2 craft to visit Tiagong 1. China has no less than 2 more missions planned before the end of 2012 and one of those will be a manned. When you take into consideration that China has only managed to complete their first EVA 3 years ago (a critical capability for keeping a station in orbit) having a manned station so soon afterwards is an incredible achievement. Going on their timeline we could see China have their own Salyut level space station before the decade is out, and that’s just incredible.
I’m hoping that with these accomplishments that both Russia and the USA recognize how valuable China could be for the future of their space programs and seek to include them in future endeavours. So far China is the only country explicitly excluded from participating with the International Space Station, most because the USA thought they’d be nothing more than a burden to them. Such rapid progress shows that they’re not only capable of replicating current technology but also innovating their own solutions, something which would be highly valuable to all current space fairing nations. It’ll take a long time for those political barriers to start coming down, but I hold out every hope that one day they eventually will.
Debris in orbit are becoming one of the greatest challenges that we face as we become a space fairing species. You see by the simple fact that something is in orbit means that it has an incredible amount of potential energy, zipping around the earth at Mach 25 ready to wreck anything that might cross its path. Thankfully there’s quite a lot of empty space up there and we’re really good at tracking the larger bits so it’s usually not much of an issue. However as time goes by and more things are launched into orbit this problem isn’t going to get any better, so we need to start thinking of a solution.
Problem is that recovery of space junk is an inherently costly exercise with little to no benefits to be had. A mission to recover a non-responsive satellite or other spacecraft is almost as complex as the mission that launched said object in the first place, even more so if you include humans in the equation. Additionally you can’t send up a single mission to recover multiple other missions as typically satellites are on very different orbits, done so that they won’t collide with each other (although that has happened before). Changing orbits, known as a plane change, is extremely expensive energy wise and as such most craft aren’t capable of changing more than a couple degrees before their entire fuel supply is exhausted. The simple solution is to deorbit any spacecraft after its useful life but unfortunately that’s not the current norm and there’s no laws governing that practice yet.
It’s even worse for geostationary satellites as in that particular orbit things don’t tend to naturally deorbit over time. Instead anything in a geostationary orbit is pretty much going to be there forever unless some outside force acts on them. Geostationary orbits are also particularly valuable due to their advantageous properties for things like communication and location so the problem of space debris up there is of a much bigger concern. Thankfully most geostationary satellites have the decency to move themselves into a graveyard orbit (one just outside geostationary which will eventually see them flung from earth orbit) but this method isn’t guaranteed. Mass that’s already in orbit is incredibly valuable however and DARPA has been working on a potential solution to debris in geostationary orbit.
The DARPA Phoenix program is an interesting idea, in essence a in orbit salvager that cannibalizes other satellites’ parts in order to create new “satlets”. These new satlets won’t be anywhere near as capable as their now defunct donors were but they do have the potential to breathe a whole lot of life back into the hardware that’s just sitting there idle otherwise. Compared to a regular geosynchronous mission something like Phoenix would be quite cheap since a good chunk of the mass is already up in orbit. Such a mission can really only be done in geostationary orbit since all the satellites are in the same plane and the energy required to move between them is minimal. That is our most valuable orbit however so such a mission could prove to be quite fruitful.
Dealing with the ever growing amount of space debris that we have orbiting us is a challenge that we’ve still yet to answer. Programs like DARPA’s Phoenix though are the kinds of projects we’ll need to both reduce the amount of orbital junk we have as well as making the most out of the stuff we’ve already put up there. I’m really keen to see how the Phoenix project goes as it’d would be quite a step forward for on orbit maintenance and construction as well as being just plain awesome.
I can remember sitting in one of my university lectures a long time ago being taught about development philosophies. It was all pretty standard stuff, we were walked through the “traditional” methods of development (basically the once through, waterfall technique) and then brought up to speed on the more modern iterative approaches. However one little soundbite always stuck out in my head and that was when the lecturer asked us who pays for rework when a product doesn’t fit a customer’s expectations? The simple answer was you, the one who developed it and it’s something that always plays over in my head when I’m working on a project, especially those ones I do at home.
I’ve been paying extensively for rework with my latest forays into the world of game development. My regular readers and Twitter followers would’ve noticed that I cheerfully announced my success in cracking the stable orbit problem. Indeed in a round about way I had, basically my Unity scripts would push the planet around until it hit a stable orbit and afterwards would calculate the required velocity before turning off completely, letting the heavenly body orbit in a near perfect circle around its star. This worked for the 2 planets I had in there but unfortunately the equations I had developed didn’t generalize very well and adding in planets at random locations with random weights led to all sorts of wobbly orbits with planets meeting both fiery deaths and cold extinctions at the cruel hand of my orbit stabilizer. I was back to square one and I spent most of the weekend trying to figure out a fix.
Eventually I came back around to the idea that my smart-ass subconscious came up with a while ago. I had tried to implement it before but I gave up in frustration when the results I got were no different than from my far more complicated “find the angle between the sun and body, increment it a bit, find the new position, create a vector to it then apply force in that direction” when in reality the fault lied in the orbit stabilization code. All that pushing and pulling that made the orbit look stable was in fact imparting all sorts of wild forces on the poor little planet, when in fact the best way is just to simply let gravity do the work for you. With this in mind I re-implemented my perpendicular force calculations and then devised a rudimentary equation that combined the mass, radius and a fudge factor that let me hand stabilize the orbit. In the past attempting to do this stuff manually took me an hour or so per planet, with this revised code I was able to do one in minutes and have developed a new equation that is able to accurately send a planet into a stable orbit no matter where I place it in the game.
This solution was far more simple and elegant than what I had been trying to do previously but the cost in terms of rework was tremendously high. I’m lucky in this respect in that the client for this is just myself and my friend at the moment but had this been for someone else with whom I had a contractual relationship with that kind of rework would’ve been extremely costly. Of course I could try to make the client pay for it but ask anyone who’s gone back to a client asking for more money after saying they could do it for a certain price and you’ll usually be laughed out of the office, if not walked out of there by security.
Working around this isn’t easy as clients will usually want to have a strict set of deliverables and time frames which seems to rule out any iterative or agile development methodology. It also pushes a team dangerously towards suffering from analysis paralysis as you agonize over every requirement to make sure it’s covered off in the final product. A healthy amount of analysis is good for any project, especially if it makes the product easy to maintain or modify, but it’s also incredibly easy to fall into a never ending spiral of pointlessness. Thankfully however I’ve noticed that clients are far more receptive to the idea of milestones these days which lines up well with any iterative process, skirting around these problems easily.
Going after the most simple and elegant solution might seem like the best idea at the time but in my experience it’s those kinds of solutions that take the longest to achieve. It’s almost always worth it, especially if all you’re spending is your own time, but when you’re working for someone else they might not be so keen for you to spend inordinate amounts of time chasing your white whale solution. This probably explains why a lot of software contains incomprehensible code riddled with bugs, but that’s a whole ‘nother ball game and a blog post for another day.