Thursday, January 31, 2013

Is Intellectual Property Real?

Intellectual property is a term that's been gaining traction. It's probably America's biggest export. Richard Stallman claims that the term "intellectual property" is a mirage and (to my mind) rightly claims that it confuses various different laws by grouping them together - mainly copyright, patents and trademarks.

I've got to admit to scoffing when someone thanked me for my contribution of "intellectual property". In an Open Source mentality, it's not MY intellectual property, but rather, the contributions of billions. Probably 90% (that's generous - 99%?) of what I know is from what I've read or what others have told me. A very small proportion of what I "know" is from first hand knowledge.

So about the confusion... The general public license (GPL) relies on copyright in order to function. Without copyright, it does not work. It wouldn't be worth the paper it's written on. However, patents, which grant a "limited" time monopoly, have created all sorts of negative effects on the technology sector. The cellphone wars, which are happening currently, are a great example of this.

In 2003, SCO claimed that Linux contained code owned by them - specifically code from Unix System V. If they'd been successful with their lawsuit, we might not have Linux - or at the very least, we'd be paying licensing fees for Linux. This would likely mean no Android, ChromeOS, more expensive hardware (routers/modems etc.) etc.

If Intellectual Property is a real thing, then it means that companies have been stealing from us. Disney for example, with it's constant campaigning for extensions to copyright, have kept works that should now be in the public domain - i.e. works owned by everyone - out of the public domain. Need I point out that a lot of Disney's films are based on works in the public domain? Cinderella, Beauty and the Beast, Rapunzel, Robin Hood, The Jungle Book etc. In America, the Copyright Term Extension Act has meant that nothing will enter the public domain until 2019 at the very earliest.

I would also argue that a lot of the laws around "intellectual property" are counter to the information age. Things change at lightspeed. Granting a patent on technology only really serves to hinder technology... for 20 years! Think about it - cellphones are almost indistinguishable from what they were 20 years ago (a brick with a thick straw and loads of buttons vs. a flat device with very few or no buttons and a glass front).

We also shouldn't be dismissive of the silly patents that have been granted and are still being granted. 1-Click stands out. Amazon had a patent based on simply storing a customer's shipping address, billing address and credit card details. Imagine the Internet with horribly convoluted "shopping carts" and how long it would have taken the Internet to become a truly viable business medium.

Silly trademarks also have this issue. Microsoft claimed that the name "Lindows" would cause confusion and erode their trademark to "Windows" - a term that I think is just so absurdly generic (i.e. "Switch back to your browser window". I'm kind of glad this trademark dispute was upheld as I feel that Lindows probably would've eroded Linux's reputation). Apple claimed the same for the Amazon Appstore being an infringement on App Store - a claim I would also dispute. I'd used the term "App" to mean application for years before it became trendy for cellphones (I'm still waiting for "proggie" to become popular).

I'm of the opinion that research is also greatly effected negatively by "Intellectual Property". Could a cure for AIDS have been found if knowledge could be shared more freely? There is a counter argument here: would pharmaceutical companies invest in AIDS research if it wasn't profitable to them? Which then has me gritting my teeth about the emphasis on profit over people... Ditto on things like Cancer research (how many different cancer research organisations do you give money to? ).

So for "intellectual property" to be profitable, at least in the case of patents, it needs to be able to hinder the industry for which it's derived from. Longer copyright terms result in information being kept out of the public domain and thus losing us the opportunity to work with or improve upon older works. Trademarks, while I don't really have a real problem with them, are, in some cases, getting silly.

But aren't patents supposed to help innovation by making the investment in research profitable? And copyright - well that's just common sense - allowing an author to profit from their works. I'm not really concerned with Trademarks at all.

But where does this leave our "knowledge based economy"?

Clare Curren made a statement during the Debate on the Prime Minister's Statement (for anyone who read my last post, I termed it "The Prime Minister's debate because this is how it was termed on the news. I was being a little tongue in cheek about it) yesterday asking "Why is the government not looking into a weightless economy?".

I find myself with mixed feelings about her speech. I'm choosing to take it as a call to review our "IP" laws and get them right. Let's acknowledge the speed of change around technology and remove patents as a barrier from the industry. My personal view on copyright - let's stop trying to protect the profits of multinationals by criminalizing people and instead come up with sane laws which encourage industries to adapt and change and look for points of value. In my opinion, it's not up to the taxpayer to pay for the costs of proving copyright infringement.

Does a knowledge based economy create jobs?

I know a lot of very smart people currently without work or doing medial jobs for the sake of having a job. I was surprised when hearing a woman working at a cafe talking about the differing OSes between an iPhone and Samsung Galaxy with one of her customers.

I feel horribly sympathetic towards those at the bottom end of the socio-economic ladder. We've effectively removed opportunities for alternatives types of learning - the more hands on approaches like apprenticeships for example. Our current government seems to have given up almost entirely on the manufacturing industry (I would argue that it was the last government that put the nail in that particular coffin though with the free trade agreement with China).

So we need more jobs... not just high end "we're going to be innovative and inventive" but also "I need to be able to feed my family" type jobs. So back to knowledge based economy creating jobs - I think it probably does to some extent - but I don't for a second believe it to be the silver bullet. It does half a job. And it can only create long term jobs if the laws around it are made sane.

Wednesday, January 30, 2013

The Media Gone Right

I never really thought I'd be writing this post. I loved TVNZ 7 but it still had the pandering populist news of other channels. Believe or not, I'm also a big fan of Parliament TV. Okay, so others can't stand it. It can be boring. BUT it's uncensored.

I kind of wish that it became a twitter feed. Tonight I'm watching the "Prime Minister's debate" - I'm not sure he's terribly happy with the way that things are turning out. All of the other opposition parties are in agreement that his speech was boring, uninspiring, lacked anything near substance. A bit like a meal at MacDonalds. Well - it's dinner. But... well... it just didn't seem like food.

I'm tempted to do the rest of this post in the form of tweets (minus hashtags because it's a favourite game of mine to pretend to not know what they are)...

Labour: National have not done anything to fix our problems. We rule - we had years of excess, National have had none.

Greens: National have not done anything to fix our problems. Their policies do not reflect the people.

NZ First: National have not done anything to fix our problems. They keep selling our stuff! Them foreigners be greedy fellas.

Maori: Treaty of Waitangi. National have not done anything to fix our problems. Treaty of Waitangi.
(Outside of the tweet... I really hate being dismissive of the Maori party but I just find them horribly uninspiring. Perhaps if their arguments were around what benefits people rather than just Maori and they referenced documents outside of the Treaty of Waitangi I'd find myself expressing a bit more respect. For what it's worth, I really do wish I could hold them in higher regard.)

Mana: Various children's associations (Kai!). Poor people got it bad. National have not done anything to fix our problems.
(Kai is the Maori word for food)

ACT: National rule! National have THE only leader. MMP=bad. Rich need $. Labour=handouts and less money for rich. Hard working=rich.

Alliance: State shouldn't make decision on retirement. We'll work with National though do things not popular with National.
(Actually, this just feels like a speech written well before hand to push their own agenda rather than responding to John Keys' speech.)

Unfortunately, I was watching the replay and that's about where it cut off. So thus far, I'm thinking I made the right decision with my vote. We need politics that focus more on people - in which case, I'm becoming more of a supporter of the Greens. I would like to see the Pirate Party take a look itself and become about a wider "politics for people" sort of a party.

While I find myself applauding "the media" for parliament TV, it should be noted that it's for the distinct lack of "the media" that I like watching...

Tuesday, January 29, 2013

Community Tangleball Type Things

I've been hanging around Tangleball lately. And while I still have a huge amount of pride around the project I wonder if it was the right approach.

By now, readers of this blog probably have some idea of my ... social engineering. I have ideas that I think would make things better and I want to implement them in some way. I think these ideas will have brilliant effects on ... well ... everyone.

Starting in a high income area has the advantage that it's more forgiving - if you get something wrong, the project doesn't just collapse. Someone (or people) just end up spending a little more money. It doesn't look like a project JUST for the poor - rather, the ideas can go on down towards the poor.

When people say "I have to eat", I want it to mean that they're going to spend time at home gardening. If people like to drink, then drinking should have other aspects in it. Not just socialising, but also an appreciation for the alcohol - showing each other different ways of accomplishing different tastes (I'm determined my first batch will be a pilsner with a honey after taste).

So Tangleball fits into that whole ethos. I want people to make things themselves or learn how to repair things or re-use things to make different things. A hair dryer would probably make a decent pop corn maker.

But I wonder if the approach needs to be more sustainable. I wrote about the idea of a brewers club. What if it expanded? What if you could do varying activities in garages all through your neighbourhood? That garage is for brewing your own alcohols. That place has a greenhouse for your seedlings. The one has a sleepout for working wood. That one has things for working with metal and that one has a big room full of computers etc.

What would this accomplish? If you're using spaces around the neighbourhood that someone is already paying for, regardless of this idea, then rent is less of a problem - making it more sustainable. The places could be a lot more focused. For example, having a place to actually drink the alcohol that isn't a workshop has got to be a win (and who knows - the money paid could go towards things like pool tables). A woodworking shop might have an open place to finish the work (airy space to stain and seal) etc.

But of course, there's a great big giant problem here. How do you get the different spaces socialising with each other? Collaboration can be quite difficult to manage. What happens if your project requires a few different disciplines? Could this still happen using this model? Help needed....

The Poverty Line

Okay, so I talked about the poverty line in my last post. It's not official. There doesn't seem to be a clear standard. One person told me that the $2.25 was an international extreme poverty line. Another one said that the amount was around half as much going on this article - a claim I dispute as the article talks about supplementing by this much (for healthcare and school costs).

It's a bit of a political minefield. If you set it really low, then you give the impression that more of your people are being cared for and the inverse is true - you don't want to give the impression that a great deal of your population aren't being cared for.

Then there's the actual cost of living. While inflation is an almost constant 1-1.5% per annum, the cost of living goes up at a steeper rate. For example, the cost of petrol going up results in the cost of ALL goods going up and the cost of wheat or corn.... good luck for food. As a comparison: My brother in law in Perth earns a 6 figure salary but is still on family support. This also has an effect on what you should expect from a pay rise. While it may go up to meet inflation and cover the rise in living costs, if it isn't an actual increase, the company involved may be dissatisfied with you.

I said in my last post that I thought that amount should be higher. I love the fact that in New Zealand, we have a tendency to care about people first. I've heard of some hospitals turning a blind eye to over stayers and the like who aren't legally entitled to healthcare. Rather than be upset about this, I think we should be proud. People matter here.

So the cost of living in Auckland is relatively high compared to other places in New Zealand. What does this mean for my little experiment? The meals I've come up with thus far are probably a little off the mark - and I'm cheating in places... I think they're close but I've got to spend some time at the super market in order to quantify it.

So my first recipe (single serve):

Asian Inspired Pepper Prawns

Ingredients:

  • 3-10 pepper corns (needs to be quantified but very low)
  • 6 frozen prawns (assuming a 1 KG $15 bag contains at least 100 prawns - $0.94)
  • 1/2 a large onion - quartered (needs to be quantified)
  • 1/2 a carrot - julienne (a little bigger than match sticks) (needs to be quantified)
  • some other veges - prepare them to be about the same size as the rest of the ingredients (snow peas are REALLY cheap at the moment - I brought a punnet that's lasted me around 3 weeks thus far for around $3. Beans are great and frozen beans are available all of the time. Capsicum is great if it's cheap etc. Seasonable. Avoid things like peas, cauliflower as these don't really fit)
  • 1/2 a cup of rice
  • A splash of soy sauce (needs quantifying)
  • A tablespoon of corn flour (Ha! You can see how much research I've done).

Method:

  1. Put your rice on. For the 1/2 cup of rice, throw in 1 cup of (cold) water and 1/2 a teaspoon of salt. Put it on a high heat. When it starts boiling, turn it down to a simmer (still boiling but not violently). When the water level reaches about the same level of the rice, turn it down low and throw a lid on the rice. When it's finished, take the lid off and break it up with a fork. You don't really want it to solidify. Do this while cooking your meal.
  2. Throw your veges (all of 'em) and prawns into a hot frying pan (with just a touch of oil - you really don't need much). Keep the stove up high. Don't be shy about using high temperatures. Chinese food is based around high quick temperatures (burning bamboo) and doing otherwise normally results in overcooked food.
  3. Flip them around (or move around with a spoon) for about a minute. Add some water - about half way up. Don't cover everything - you're not looking to boil anything - just cook it through. Put in a dash of soy sauce.
  4. Crush some pepper corns.
  5. When you're satisfied that your veges are cooked through (don't worry - the prawns won't take long to cook. Use the veges as a guide), mix some corn flour with cold water and throw it into the mix along with the crushed (crached, ground) pepper corns.
  6. Cook until your liquid has become a thick sauce around your veges and prawns.
  7. Serve on top of rice.
Here's one I made earlier.

Before I end this post... I'm looking for a cheap substitute to parmesan. While bacon, eggs, pasta and parsley (grown at home) is cheap, I still don't have an answer to what to use for parmesan.... Anyone have any ideas?

Thursday, January 24, 2013

Another Interesting Project

For the last couple of weeks I've been obsessed by a number - $2.25. It was a number I read on Lynda's blog. Attempting to live on just $2.25 a day on food...

So as many of you know, I love cooking. It's a feat of engineering and it's always fun setting up challenges. But $2.25 a day... wouldn't you just be tempted to stop off by the local fish and chip shop and buy a scoop of chips? It wouldn't be healthy, but you'd at the very least get fill.

Of course, the problem with being fill without everything your body needs - you tend to eat more to try and get those nutrients. Try to lose weight and you'll find that you're constantly hungry because the body's been trained into thinking that you need a certain amount (way higher than necessary) of food in order to get the nutrients needed.

But why $2.25? It's a poverty line. Sure, New Zealand doesn't have an "official" poverty line and, from what I can tell, we have no clear definition for poverty. So $2.25 is probably as good a number as any (although, I would personally push it up a little bit - I feel it would be more productive to include more people rather than less).

Let's talk about poverty for a second. When I talk about "living in poverty", I mean, LIVING in poverty. There is no time limit to it. It's life. It often happens as a multi-generational thing. In New Zealand, we've got the state dependency cycle. While people are able to live (barely), they find themselves not knowing how to pull themselves out of the situation.

Case in point: When people imagine themselves out of the poverty cycle, they imagine themselves as sports stars being able to spend ridiculous amounts on cars. Given a sudden influx of income, it would be spent, not on pulling themselves out of a hole, but on what they believe to be symbols of wealth. The food wouldn't be healthier, there'd just be more of it.

There are ways out of the cycle.

I've briefly talked about sports. I don't like this way out as:

  1. It only works on an individual level and we tend to focus on the exceptions. How many people spend their early lives training for sports only to find they're not at the absolute top of the game? I'm willing to bet that there are more losers than winners (A bit like saying "I heard of a guy who won $20,000 at the casino!". The horribly flawed "You've got to be in it to win it" argument). I'm not denying there are some benefits to be had - getting into other school's for example. But then even that has the same feel as point 2.
  2. There's something that feels quite... perverted about it. While there were some people upset about "The Hunger Games" when it came out - teens killing teens - professional sports has a similar feel to me. Sports stars are paid big money to be held up as idols. I can imagine Donald Sutherland (President Snow) proclaiming these players as being the finest examples that society has to offer... 
Military. While I'm a not a fan of military, during peace time, the military is actually a pretty good way out. During war time, not so much. Sacrifice our poor for our agendas (whether that be freedom, sucking up to someone with a bigger army than us, we want cheaper oil etc.)... Not cool.

Education. Part of the poverty cycle is not only not having the resources to be able to make decisions, but, because of the lack of options, making the right one is something of a challenge. So what those not in poverty would see as obvious and common sense, need remember, common sense might not be so common (I don't mean people don't have it, I mean that what I see as sense isn't necessarily what other's see as sense - it's not common to us all. I so wish set theory was still taught in school). There are businesses out there that pray on this sort of thing. Think finance company's with high interest rates, "convenient" shopping via trucks - with hire purchase deals, or even, dare I say it, the likes of Chrisco (really, if you put that regular payment into a bank account, you'd probably find you could afford 3 times as much food down at the local supermarket). Of course, the people who own those businesses "have to eat" (without any real accountability to what they do to people).

Okay - so never mind all of that. Let's imagine for a second that we're all horrendously rich and we have 2-3 times that much to spend on food and drink in a day. $4.50 - 6.75 a day (per person) to spend on food. I know! Pure bliss right?

It kind of puts things into perspective. Do I REALLY need that $4.50 cup of coffee? Is $10-15 really a cheap meal at the local kebab shop? For the last couple of weeks I've been cooking with the goal of creating balanced (individual) meals at about $2 a meal. I haven't been terribly militant about it - though there's time for that.

I've got a goal in mind. Start coming up with recipes for these meals (and start to document them). Start the Trading Post movement and then revisit those meals. Do they become cheaper or better with trading?

I've been genuinely surprised with what I've been able to get away with. A 1KG $15 bag of prawns, assuming that it has at least 100 prawns, and a meal only really needs 6 prawns, is good for a little over 16 meals - $0.94 per prawn meal leaving quite a bit for veges (I haven't quantified these yet - we always have a big sack of onions around for example and given that it's seasonable, I think this is going to be hardest bit of this little project). Chicken Sausages - $4 for 8, assuming you need 2 sausages for a meal, are actually more expensive ($1).

From a very personal point of view, I want to make this a way of eating for me. To be conscious of how much I'm spending on food and know what it is that I'm eating. To keep things in perspective. 

Actually, it's a "fun" little experiment reading the nutritional information on the back of products. Use the "per 100g" listing rather than the "per serve". You'd be surprised by the number of crackers and the like that are a quarter fat or more (Pringles I think were something like 30g fat / 100g - it's been years since I've had Pringles). See if knowing the percentage of fat/salt (sodium)/sugar (simple carbohydrates) changes your diet or purchasing decisions...

So what do others think? Interesting project? I realise it kind of lacks an aim... it's kind of "living to excess with perspective". Still... if the outcome is a little perspective, I'll be happy.

Monday, January 21, 2013

Americanization

Something came up today. Capitalism gone too far, while it effects America profoundly, and has a heavy toll on the rest of the world, doesn't really take into account the effect on those places kind of part of America, but with very different cultures. Places like Hawai'i and America Samoa. (I'm going to avoid the Native American subject for the time being because I'd rather focus on the Pacific Islands under American rule),

By now, those who've read a lot of this blog (I've got to note that there's been a predominantly American audience to this blog of late), know what I mean by rampant capitalism. Namely that money (or representations of money - i.e. is the value expressed in dollars in the stock market real?) has more value than ... well... everything. That while people may think of themselves as being moral because they "look after their own" - whether "their own" is family, a particular race, religion etc. makes little difference - by my own reckoning, doesn't necessarily make them moral. And while it's okay to "look after your own", it's the dehumanizing of other people that has lead to the word "genocide" and it's use throughout history. So arguments such as "publicly funded healthcare will cost more than current solutions" is dismissive to people and makes a purely capitalistic argument.

So what happens when you take a culture, focused primarily on people, and apply rampant capitalism? I'm told that there is a certain sadness to the Hawaiian people. And America Samoa is on a different extreme. I haven't really had time to fully explore this phenomenon, but I suspect this has to do with points of comparison. While the Hawaiian people, who are considered Maori, have New Zealand Maori as an example - Kura Kaupapa (Maori language immersion schools - The Hawaiian's are making attempts in this area), the Treaty of Waitangi and the claims and resolution system (the Waitangi Tribunal) etc. - the American Samoan's have Samoa as an example.

Samoa has an interesting system in that only matai (chieftains?) are allowed to stand for election. Prior to 1990, only matai were given the right to vote. So while there's a framework of democracy (voting), assuming that the title of matai is passed down a family line, it's a monarchy. And while it can be argued that this is a terrible thing, I would put forward the argument that it is the people that give the matai so much power - in much the same way that value bestowed upon bits of paper is much the same thing (money). What we know of most monarchy's is that they fail because those in rule are, more often than not, detached (out of touch) from those being "ruled" by virtue of their privileged position.

What effect does this really have on American Samoans? I'm told they speak with quite different accents from (Western) Samoan's - a need to assimilate into American culture? (Otherwise labelled "accent neutralization" in India where Raj isn't Raj on the phone - he's Rob). Are they losing something of themselves by being part of America?

Meanwhile, I can only (at this time) assume that the Hawaiians are resentful of the culture imposed upon them. A culture of money over people.. And to think - it's no longer a country, but rather, a State of the United States... (for 50 years now). So if you ever get the privilege of visiting Hawai'i, I'd suggest seeking out the locals and seeing how the indigenous people are treated. I'm willing to bet that it's worlds apart from the luxurious resorts.

Saturday, January 19, 2013

Tuesday, January 15, 2013

Slipped

Just a quick note (It kind of ties in): I watched television yesterday and found myself laughing at an ad. It featured a motherly looking woman dancing around after having used air freshener. I don't know about anyone else, but when ever I've seen someone with a can of air freshner, they've looked about ready to tear strips off whoever caused the smell. Or perhaps, this has just been my experience and my mother could learn a thing or two from advertisement mothers. When cleaning a mess, the cause of the mess is less important than the way the newly cleaned bench top sparkles and  offsets your eyes...

For a long time now I've stopped reading anything on a regular basis. I kind of just do a follow my curiosity type of thing. I used to love reading Boing Boing and had a few web comics that I read. But then I realised that I was spending hours of my day, everyday, reading this stuff. I could be being productive in that time. It was a bit like being on social networking.

So I can't for the life of me figure out why people chose to have information pushed to them. We already live in this amazingly data rich society. While it's incredibly cool that you no longer have to answer your kids with "I don't know" quite so much any more (instead, you can say "let's look it up together" without having been sucked in by a door to door encyclopaedia salesman), it does have an effect on the way that people act and, probably more interestingly, how they spend their time.

I went to a pub the other night for dinner (Terrible experience. Turns out with me exercising and having smaller meals, a good old fashioned pub roast felt almost toxic) and there was a family sitting around a table. 3 kids sitting with them. Except, instead of staring off into the distance and elbowing each other as happened in my day (actually, my experience was more due to the fact that everyone around me was probably not speaking English), they were each on cellphones.

So RSS feeds come across as a real bona fide nightmare to me. I don't want any more information! I want a beep free zone. Somewhere you can go without hearing an email coming in or telling me that something's been left in the microwave or that the dishwasher has finished or that the fridge door has been left open. Even the phone ringing sends me into a "STOP BEEPING" moment.

So anyway, I was on gmail wondering how gmail selects the contacts to appear in my chat list. I mean, I don't know half of the names that appear there. So I started having a look. There were various people - fringe people really - that I'd helped with Linux problems over the years. And I emailed an old friend that I haven't had any contact with since... 2007?

And then I came across Lynda - who had interviewed me for a magazine interview (I never got to see the resulting article though I'm told that it was distilled down enough to not need anything from me) and found that she's got a blog. While I probably don't really care about pedicures and cleaning products (I'm tempted to start looking for interesting ways of making your own cleaning products although... how far can baking soda, vinegar and lemon juice go really?) the blog brings up a bunch of ethical questions. Look for the post on Ethical Creep.

[Update]: I emailed Lynda about having stolen the first two pictures (anti-disestablishment man) who gave me a link to the article I'd never previously read. The link itself had me amused - give-me-some-space - as she'd commented on the fact that she'd had to keep the article down to a few hundred words. Just a bit more space and I might've been quoted ;). As it is, Robin and I did the interview together.

From from there it just got worse. I came across a couple of photos in Lynda's Google Plus profile. Which lead me to then look up the term "anti disestablishment man" and do an image search which them sent me to a blog which eventually had me looking at body parts made from bread.

A blog post and a couple of emails later, and there goes a couple of hours of my day...

Just a quick addition to the post. This post was written before I'd heard about the news on Aaron Swartz. This post is in no way me disrespecting his contribution to the RSS specification. From what I've heard of the guy he was a guy who'd suffered various issues - depression, persecution, stresses outside his control within his personal life etc. After reading the boingboing post, there are bits about him that resonate strongly with me. The bits about the impossible standards held for both mentors and myself/himself for example. And of course, there's his ethics. I can relate...

Wednesday, January 9, 2013

Recycling Linux Technology

Geekspeak warning. (Imagine a campy robot waving arms about)..

One of the things that Linux does in credibly well is package management.

In a Windows world, to update a system completely, could take a full day. The problem has been that licensing makes keeping things up to date in the one place "problematic" (a polite way of saying "Fornicating Stupid"). Even worse, applications often check for updates when you start trying to use the application. So you open up Firefox for example, and then find it's going to be another 3 minutes before you can actually start browsing the Internet, because the damn thing has found an update.

Enter in Steam. A model whereby applications (mainly games) can be delivered and updated from one central place. I suspect they use an Apple AppStore type of agreement whereby vendors agree to certain terms and licensing if they want to use the Steam platform for distribution.

Sound like a Linux package manager to anyone?

What's really astounding though is that Steam have recently announced the release of a public beta of Steam on Linux... And people are excited! Instead of working with open tools already available to solve the problems, and making the changes they need and contributing those changes back to the community, Steam chose to port their own software - as closed source - to Linux.

And people are excited. Why? Steam has the potential to bring a sense of commercial viability to a Linux platform. But should we really be heralding a closed source distribution model as a positive when such tools already exist on the platform?

Tuesday, January 8, 2013

Writing Flexible Code

Geekspeak warning...

When learning to program you're taught about a few holy grails.
  • Scalability - able to grow according to need.
  • Portability - able to run on multiple platforms or being able to reuse code (sometimes this gets split up into "Portability" and "Reuse" though I think of them as the same thing).
  • Flexibility - being able to modify for differing concerns.
I was writing a piece of code and writing an explanation as to why I was still using gtk2 rather than moving on to gtk3 - mainly that the official documentation was copied straight over from gtk2 but does not match up with the gtk libraries (for example the documentation for the alignmentbox still talks about margins but the gtk3 implementation doesn't have any such thing).

It's lead to having to write some documentation around how to replace that particular piece of code - basically the interfaces it needs to provide. This leads to the program being able to have any interface the developer so chooses. For example, if working on a KDE system, then it's fairly trivial to write a module that uses the qt toolkit. Or even, a text based (ncurses?) interface.

But that flexibility wouldn't have come around without a particular need. For example, I was looking at Gherkin. The application that initially sets up their computer. So it asks them for their school, username etc. and sets up the system accordingly.

And then we have the high school scenario. Students take options - such as electronics. A couple of departments had been asking for applications to do X and Y and the students having been having to download and install them themselves. When I find people having to do things themselves on a computer, I've been asking myself, is there an easier way of doing it?

So I figured the initial set up application should present the user with a list of subjects - those that need special set ups. If you're taking electronics, then install X application. If you're taking music, install Y application. Almost like getting a textbook list. But then, coupling that with package management, you could also do bookmarks. This of course lead me to write some rudimentary flow control (though I've got to rewrite it when I have a chance to be slightly less rudimentary).

Flexibility leads to more flexibility - but then, flexibility doesn't really come until you find a need for it. It's one of those things that's really hard to anticipate. Sure, there are a few basic little rules you can follow :-
  • Make your application modular. Having loads of small bits of code around is far easier than trawling through a bit block of code. Especially things like those conditional tests you seem to do throughout the code. If those conditions ever change, it's easier to change it once...
  • Avoid "magic numbers" - use constants instead. An application makes a whole lot more sense when the numbers mean something.
  • Use constants for strings (where appropriate). It cleans up the code and allows you to alter those strings in one place rather than trying to trawl through the code. I've never done internationalization but I imagine having constants makes this all a little bit easier (scalability).
Of course, these guidelines miss the brilliance that every piece of software should have - and funnily enough, it's that same brilliance that kills a certain amount of portability.

I was having a conversation with someone about badly written code. Open Source software, while I'm a huge fan, does have a fallacy. Not a fallacy exactly - more a... misinterpretation? Code should be reused. Which is true - but only where appropriate. I'm of the opinion that code should only be reused if it matches up to the concerns/specifications that you're trying to use it for. Those bits of flexibility that make a piece of software awesome for a particular purpose can have the effect that it overcomplicates or rules out certain purposes for a piece of code.

Reuse of the same code base can also limit diversity. Take GIMP for example. GIMP is a fantastic program which, for most home user's purposes, can easily take the place of Photoshop. However, for a long time, it was THE only real option for image manipulation on Linux. The lack of diversity means that, in my opinion at least, image manipulation in Linux stalled. It's direction was dictated by a single project and while that project really is awesome, other ways of doing things were dismissed. In fact, GIMP is one of those projects like OpenOffice. For the most part playing catch up with proprietary solutions - essentially dictating it's direction and it's architecture. While parts of the code should be reused, it's suitability for projects like Krita, while very similar, have very different concerns.

It's all an engineering problem. Trying to balance out the awesomeness (flexibility) with reuse (portability)...

Monday, January 7, 2013

Holy Celery Seed Batman!

I recently learned that saving and sharing certain seeds is illegal. Illegal. Yep - illegal. As in, breaking the law. While it's probably a civil matter, there is of course the problem whereby civil issues are becoming criminal offences. Things like copyright infringement.

Which, incidentally, is what makes harvesting certain seeds illegal. Okay, so not exactly copyright, but patent infringement. Close enough. Things like soy seed, corn seed, hops plants (I was curious to see if you could grow your own hops for brewing beer - I quite like the idea of being able to start from the garden and producing your own bits and pieces) etc. I imagine this applies to just about anything that's used in just about all of our foods. Soy seed is used to make soy products (used as a filler in most of our manufactured foods). Corn used for sweeteners and thickeners. Hops which give beers their flavours. Wheat, barley, sugarcane, sugarbeets etc.

And then there are those plants that can't be grown from seeds. Commercial apples for example, if I understand it right, are actually apples grafted with citrus fruit to give them size and juiciness not otherwise found in apples. This is well before the whole "genetically modified" debacle - I argue that while genetic modification goes quite a bit further, the combining of generally unrelated plants to produce something that is not able to reproduce itself is in essence a form of genetic modification.

Last winter I threw a celery plant into the garden. I loved it! Instead of going to the supermarket to buy half a celery, using a couple of stalks (usually a layer in - the ones on the outside just seem way too stringy) and having to throw the rest out, I was able to go out to the garden, cut off the bits that I needed and the next time I wanted celery, it was still there! What I also found interesting is that it likes to spread out. None of this growing straight and tall as you buy from the supermarket. Instead, all of the stalks were tender (not quite so stringy) and it dominated an otherwise empty vege garden.

I recently pointed out the plant to a friend and said "Who knew?". The thing has gone crazy. It's been flowering. Like really flowering. Probably thousands of tiny little flowers while it went out of control. I looked up on the Internet how to harvest the seeds (how great would it be to do my own seedlings rather than relying on nurseries?) and it turns out each of those tiny little flowers yield seeds in which case, there's way too many for me to plant (assuming I actually let the plant dry out. There's pressure to pull it out as it's now getting in the way of tomato plants).

And of course, we get to the whole sharing bit. If I'm growing vegetables, and I end up with seeds, shouldn't I then share the excess with people? Even better, if I'm growing seedlings, chances are I'm going to want to grow too many - as a bit of an margin of error. In which case, why don't I share some of them as well?

This could be made really cheap. If I'm saving bottles for brewing purposes, then I could also learn to cut bottles (and drill a couple of holes on the bottom for drainage) and use them as reusable robust plant pots. Better value for money in terms of the quality of plants. Rather than the lush looking, root bound seedlings from the nursery which need to be planted immediately, we could produce plants that have a higher chance of surviving a re-potting.

This probably leads to much more interesting cooking. If you're growing varieties of plants with less commercial viability - i.e. varieties of vegetables that don't yield as much or don't grow as conveniently as other varieties - then swapping seeds helps with playing with slightly different flavours and textures. The one that comes to mind is dwarf celery - much smaller stems and great in salads.

Of course... sharing with your neighbours could be breaking the law.... meaning that the different, less commercial, more interesting varieties are probably more desirable...

Oh - and the name of the post. It turns out celery seed, as sold as a spice, might not necessarily come from celery plants. Who knew?