Planet Linux Australia
Julia is a high-level, high-performance dynamic language for technical computing. With a "just in time" compiler, it is very fast, especially compared to languages like MATLAB, Octave, R etc. However it is relatively new and a cluster installation and package deployment has a few quirks.
Julia is a high-level, high-performance dynamic language for technical computing.
I encountered this gem of an error working with MySQL today:ERROR 1136 (21S01) at line 144: Column count doesn't match value count at row 1 TL;DR
A mismatch between the number of destination columns and the number of columns specified in your MySQL script will generate this error.In Detail
I was converting the database for one application (Storyboard) to another (Phabricator]. Something I've not done before and the code was more than six months old and a hand me down from a previous dev. It worked then but the SQL schema for both has changed since then.
This is the code snippet it choked on:insert into user select id, phid, username, if(full_name is NULL, username, full_name), NULL, NULL, storyboard.make_cert(32), '', unix_timestamp(created_at), if(updated_at is NULL, unix_timestamp(now()), unix_timestamp(updated_at)), NULL, 0, 0, '', storyboard.make_cert(255), 0, 0, is_superuser, 'UTC', 1, 1, storyboard.make_cert(64), 0 from storyboard.users;
It turns out that this error is telling me that the destination table (phabricator_users.user) does not have the same number of columns as the select statement from storyboard.users.
Examining storyboard.users first, I found this:mysql> desc users; +--------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------+--------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | created_at | datetime | YES | | NULL | | | updated_at | datetime | YES | | NULL | | | email | varchar(255) | YES | UNI | NULL | | | is_staff | tinyint(1) | YES | | NULL | | | is_active | tinyint(1) | YES | | NULL | | | is_superuser | tinyint(1) | YES | | NULL | | | last_login | datetime | YES | | NULL | | | openid | varchar(255) | YES | | NULL | | | full_name | varchar(255) | YES | MUL | NULL | | | enable_login | tinyint(1) | NO | | 1 | | +--------------+--------------+------+-----+---------+----------------+ 11 rows in set (0.00 sec)
Examining phabricator_users.user I found this:mysql> desc user; +--------------------+------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------------+------------------+------+-----+---------+----------------+ | id | int(10) unsigned | NO | PRI | NULL | auto_increment | | phid | varchar(64) | NO | UNI | NULL | | | userName | varchar(64) | NO | UNI | NULL | | | realName | varchar(128) | NO | MUL | NULL | | | sex | char(1) | YES | | NULL | | | translation | varchar(64) | YES | | NULL | | | passwordSalt | varchar(32) | YES | | NULL | | | passwordHash | varchar(32) | YES | | NULL | | | dateCreated | int(10) unsigned | NO | | NULL | | | dateModified | int(10) unsigned | NO | | NULL | | | profileImagePHID | varchar(64) | YES | | NULL | | | consoleEnabled | tinyint(1) | NO | | NULL | | | consoleVisible | tinyint(1) | NO | | NULL | | | consoleTab | varchar(64) | NO | | NULL | | | conduitCertificate | varchar(255) | NO | | NULL | | | isSystemAgent | tinyint(1) | NO | | 0 | | | isDisabled | tinyint(1) | NO | | NULL | | | isAdmin | tinyint(1) | NO | | NULL | | | timezoneIdentifier | varchar(255) | NO | | NULL | | +--------------------+------------------+------+-----+---------+----------------+
phabricator_users.user has 19 columns, yet the original MySQL syntax has 24 columns listed. So there's been a schema change in the intervening 6+ months since the script was last run.
Identifying missing fields and removing surplus columns from the script resulted in this version of the stanza:insert into user select id, phid, email, if(full_name is NULL, email, full_name), NULL, NULL, storyboard.make_cert(32), '', unix_timestamp(created_at), if(updated_at is NULL, unix_timestamp(now()), unix_timestamp(updated_at)), NULL, 0, 0, '', storyboard.make_cert(255), 0, 0, is_superuser, 'UTC' from storyboard.users;
... which unsurprisingly now worked.
Right, the next step in getting things back on track, Angry Beanie wise is rebooting the #lunchtimescience daily updates and the podcast that will be attached to it.
So starting next Monday, #lunchtimescience will return and I'm already on the hunt for the first scientist to profile for the show.
For Science!Blog Catagories: angrybeaniefor science
Next week, all the MariaDB Server developers will descend to Amsterdam for the developer’s meeting. As you know the meeting is open to all interested parties, so we hope to see you in Amsterdam Tuesday Oct 13 – Thursday Oct 15. The schedule is now online as well.
In addition to that, Monday Oct 12 2015, there is also a meetup planned with the MySQL User Group NL. As the organiser Daniël van Eeden wrote, this is a one of a kind meetup: “This is a very unique event, it is not often possible to find so many MariaDB developers together and speaking about what they work on.”
Yes, we’re doing it lightning talk style (ok, not strictly, 5 minutes), but everyone will talk about something they’re working on or passionate about that you don’t find in MySQL. I understand that there will be pizza and beverages too.
All in, a packed week in Amsterdam, and here’s to focusing on the MariaDB Server 10.2 release cycle.
This walk was odd -- it started and ended in a little bit of Theodore they never got around to actually building, and I can't find any documentation online about why. It then proceeded through a nice little green strip that has more than its share of rubbish dumped, Cleanup Australia needs to do a visit here! Then there were the Aboriginal axe grinding grooves (read more) just kind of in the middle of the green strip with no informational signage or anything. Finally, a geocache at an abandoned look out, which would have been much nicer if it wasn't being used as an unofficial dump now.
That said, a nice little walk, but I have no real desire to revisit this one any time soon.
Interactive map for this route.
Tags for this post: blog pictures 20151007 photo canberra bushwalk
linux.conf.au 2016 Geelong - LCA By the Bay - is now seeking applications from suitable media outlets to participate in one of the most respected technical conferences in the Asia Pacific region.
When: Monday 1st February to Friday 5th February
Up to five Media Passes will be available, providing;
- free Professional registration to all five days of the conference, valued at around $AUD 1000, including access to Penguin Dinner and Professional Delegates Networking Session access to specially designated Media areas
- Access to interview Keynotes and Speakers will be via the Conference Media Liaison, and by agreement with the Keynotes and Speakers themselves.
Travel and accommodation is not included in the Media Pass, and Media Representatives will need to make their own way to the conference.
To be considered for a Media Pass, please provide the following information via email to email@example.com
- The registered business name of your media outlet, and ABN or ACN
- Examples of the online or physical media you produce
- Whether you’ve attended linux.conf.au in the past, and if so, examples of media coverage generated at the event
- The name of the staff member who would be attending
- Acknowledgement that you agree with the Conference’s Code of Conduct
Decisions to grant a Media Pass will be made based on the following principles;
- ensuring diverse channel and cohort coverage of linux.conf.au
- prioritising media outlets who have a significant focus on Linux and / or open source technologies
- that the holder of a Media Pass have not previously breached the Conference Code of Conduct
We encourage you to remain up to date with conference news through the following channels;
- Website: https://linux.conf.au
- Twitter: @linuxconfau, hashtag #lca2016
- Google+: https://www.google.com/+LcabythebayOrgAu
- IRC: #linux.conf.au on freenode.net
- Announce mailing list: http://lists.linux.org.au/mailman/listinfo/lca-announce
Vladimir Putin 60 Minutes interview FULL 9-27-15 Vladimir Putin 60 minutes Interview Charlie Rose
Putin Speaks English for CNN
Vladimir Putin: An Enigmatic Leader's Rise To Power - Best Documentary 2015
Vladimir Putin Rage
PUTIN TELLS THE NEW WORLD ORDER FU%$ OFF!
Putin: Who gave NATO right to kill Gaddafi?
https://www.youtube.com/watch?v=Iw5Ij_RFJ1Q Putin: We won't let anyone achieve military dominance over Russia
Putin: America is a bully and threat to stability
Putin slams US in address to nation
Putin on US Foreign Policy Elite
Putin: Quit lecturing Russia on democracy!
Putin talks NSA, Syria, Iran, drones in exclusive RT interview (FULL VIDEO)
'Do you realise what you've done?' Putin addresses UNGA 2015 (FULL SPEECH)
Vladimir Putin: "KGB Spymaster"
- I think a lot of people underestimate Putin. They know that he's attempting to look after Russia's (and his) best interests but the thing I'm wondering is whether or not they realise how far he's willing to push back and how multi-faceted he really is. It's clear that he can come off as a thug but look at the USSR's history. Their is no way that he look after Russia's best interests without at least projecting strength. I'm not sure he could have lasted long within the KGB/FSB if we was a pure thug/'gansta' as seems to be portrayed by some people
- at times, I look at Putin's reactions and it feels as though there was some tacit agreement to have him bring it back to a position of global strength. Hearing some stories about him (and other heads of state of Russia as well as other USSR member states) it feels as though every time Russia has has tried to help the West, the West has not returned the favour (the truth is probably somewhere in the middle). This is especially the case with perceived lack of enough investment into Russia, the expansion of NATO, and Western interests close to and inside of former USSR states (all of this going against earlier documented promises). Many Westerners have been booted out of former USSR states for appearing to want to interfere with internal politics. The problem is that if this is true, Putin will feel as though he's being pushed into a corner from which he has no option except to react forcefully. The irony is that this time the West isn't dealing with a pure politician. As stated previously I feel he's far more intelligent and multi-faceted than that. Think carefully; with the moves that he's currently making in the Middle East, some of his other moves in other USSR states as well as in the East any possible new Eurasian Union (if it comes off) is much stronger (and better prepared) as a (China's influence and future success is a different issue altogether...) power bloc to challenge the current Western powers
- this point is pivotal in the Syrian conflict. It also gives perspective of how the Chinese/Russians view the world and what they will do in future if they continue to get stronger
- as stated previously, I don't think that any confrontation between the supposed Eurasian powers versus the West and it's allies is going to be as clear cut as some people say. In the past you could put this down to 'propoganda' but the fact is they have demonstrated their technologies and have footage of it. Nearly everything you've thought of both sides have also thought of on both sides as well. Estimates of how far China is behind the West in defense technology (on a broad basis) can vary anywhere between 5-30 years. My guess is that it's about 10-20 years (more likely towards the upper end with regards to development. Mass production and other issues are another problem entirely). Less, if they allocate resources correctly, increase their defense budget, gain further intelligence, and can make certain breakthroughs....
China's new YJ-18 missile: 'S'-shape movement at supersonic terminal speed
China Missile 中国导弹 WU-14 10 times sound speed can tear apart US anti-missile network
U.S. and Chinese Air Superiority Capabilities
An Assessment of Relative Advantage, 1996–2017
- one of the things that I think Westerners generally mis-interpret is that freedom doesn't not necessarily require choice. If that were the case, the Middle East and many parts of Eurasia would have fallen apart a long time ago. Look at the way the Chinese government has handled their overheating sharemarket. In the West, investors and institutions would blame the government (for recent massive/drastic falls) but would understand that that is part of life. In China, interviews with some people is identical to the response that is given by a lot of former Soviet spies. Failure and betrayal are much more closely aligned
- people keep on arguing about how much they spend on defense and how spending equates to quality. The problem is that price doesn't necessarily equate to value. Anybody who has lived long enough knows this.... Who cares if it's cheap or expensive if it's effective in fulfilling it's goal?
- guess this answers my previous thought about how far the Chinese are willing to project out. With respect to the functioning of the UN it is fascinating to see how the persepectives of the Russian and Chinese will play in the future especially if they continue their pathway towards strong, sustainable economic growth. What has surprised me is how early (relatively) they've been to push out
- people (any country) get hysterical at times in this discussion on who will 'lead the world' in future. Moreover, it is at this point that power projection and deterrance begin to take on bizarre dimensions. Think about how strange it sounds when the someone who projects power considers that it a deterrent against someone who considers an immobile object a deterrent
- I don't think China wants to win back Taiwan (or other contested territories) by having to have armed conflict. They want these territories to come back willingly to the 'motherland'. If they don't have that choice they want to have the exact same option that Russia has to it (with other former states of the USSR). Moreover, if they invade/take over contested territory they want their military to be strong enough such that they don't have to resort to nuclear weapons to intimidate others into backing down. They don't see it as that either. They see it as recovery of lost territory that has been documented (the same goes for other countries in the region though)
- with some of the moves of recent in the Middle East one has to wonder how much respect countries in that region actually has for the West?
- turning local populations can take decades and even then they may still want you gone. This means choosing your battles (and scoping them) more carefully, staying there for the long haul, or ensuring that the side that you back will be able to take control. Ironically, this potentially means coming to an agreement with Russia on and having at least partial representation by former elements of Syria's current government. The Middle East is becoming more and more bizarre (and confusing) by the day. There are few if any clean hands in our world now
- if you've never heard of Chomksy his perspective on the world can come off incredibly paranoid if you've never heard too many other non-Western perspectives. It is interesting little (and how much at other times) separates many of us though
Bernie Sanders + Noam Chomsky: Deciphering Foreign Policy Jargon
Noam Chomsky: US is world's biggest terrorist
Noam Chomsky: US terrorism (2015)
2014 "Noam Chomsky": Why you can not have a Capitalist Democracy!
"Who does control the world?" - Noam Chomsky - BBC interview 2003
Noam Chomsky: Rebel without a Pause - Documentary
- the more you read the more obvious it is why there are so many defecters from from the West rather than the other way around. While things are brutal in many non-Western countries they are more up front. In the West things are at a different level, often less obvious and often hidden in the shadows. Potential agents, employees only get an idea of what the 'real world' is like when they join the service/s. I guess this is also the reason why if there are non-Western defectors they are often based on idelogical grounds
- if you know enough about finance and economics you'll realise that most GDP figures are distorted since everyone chooses different constituent parts. It's not just an issue related to China alone. In fact, in the past there were stories about them under-reporting GDP figures because technically their measures were different
This script is to facilitate automated retrieval of music from the website, http://www.soundcloud.com/ after it was found that existing website download programs such as Teleport Pro, HTTrack, and FlashGet were too inefficient.
It works by reverse engineering the storage scheme of files on the website, the lack of need for registration and login credentials, and taking advantage of this so that we end up with a more efficient automated download tool.
Obviously, the script can be modified on an ad-hoc basis to be able to download from virtually any website. As this is the very first version of the program (and I didn't have access to the original server while I was cleaning this up it may be VERY buggy). Please test prior to deployment in a production environment.
OS X: About OS X Recovery
How to Make an OS X Yosemite Boot Installer USB Drive
How to install Windows using Boot Camp
How to Create a Windows 10 Installer USB Drive from Mac OS X
If all you want is to try a later version of Mac OS X then try virtualisation...
I can log into my iTunes account but can not access my account details, what's wrong?
Came across a bizarre wireless bug recently on Mac OS X Snow Leopard
This is a bunch of quotes that I've collected recently.
- Colonialism was neither romantic nor beautiful. It was exploitative and brutal. The legacy of colonialism still lives quite loudly to this day. Scholars have argued that poor economic performance, weak property rights and tribal tensions across the continent can be traced to colonial strategies. So can other woes. In a place full of devastation and lawlessness, diseases spread like wildfire, conflict breaks out and dictators grab power."
- The United States makes an improper division between surveillance conducted on residents of the United States, and the surveillance that is conducted with almost no restraint upon the rest of the world. This double standard has proved poisonous to the rights of Americans and non-Americans alike. In theory, Americans enjoy better protections. In practice there are no magical sets of servers and Internet connections that carry only American conversations. To violate the privacy of everyone else in the world, the U.S. inevitably scoops up its own citizens' data. Establishing nationality as a basis for discrimination also encourages intelligence agencies to make the obvious end-run: spying on each other's citizens, and then sharing that data. Treating two sets of innocent targets differently is already a violation of international human rights law. In reality, it reduces everyone to the same, lower standard.
- Australian actively managed global funds continue to deliver woeful returns, with 67 per cent performing worse than the S&P benchmark indexes, rising to 85 per cent over three years and almost 90 per cent over five years.
"On average, international equity funds posted a strong gain of 23.4 per cent in the past one-year period. However, the majority of funds in this peer group, at 67.3 per cent, underperformed the S&P Developed Ex-Australia LargeMidCap, which recorded a return of 25.5 per cent over the same period," Ms Luk said.
Every single Australian bond fund has underperformed the index this year, and the longer term results are not significantly more promising: 83.4 per cent underperformed over the last three years, and 86 per cent over five years.
- Thursday’s speech was not the first time the Pope has spoken out about the arms trade. He referred to it as “the industry of death” in a talk with Italian schoolchildren in May. “Why do so many powerful people not want peace? Because they live off war,” he said.
“This is serious. Some powerful people make their living with the production of arms and sell them to one country for them to use against another country,” he said. “The economic system orbits around money and not men, women. … So war is waged in order to defend money. This is why some people don’t want peace: They make more money from war, although wars make money but lose lives, health, education.”
- A politics and solidarity that depend on demonizing others, that draws on religious sectarianism or narrow tribalism or jingoism may at times look like strength in the moment, but over time its weakness will be exposed. And history tells us that the dark forces unleashed by this type of politics surely makes all of us less secure. Our world has been there before. We gain nothing from going back
- The fall of Kunduz may also be a good time to look at whether the Afghan Army needs to shuffle assets around, he adds. In the immediate aftermath of the Taliban takeover, the government in Kabul rushed well-regarded Afghan commandos to the region, for example.
That’s to be expected, but “militarily, you want to make sure you know what the situation is before you throw a bunch of forces into it,” Barno notes. This includes assessing the level of training and capability of Afghan forces posted up there. “Are there enough forces, and were those forces trained and led properly?” he adds.
Finally, it’s worth keeping in mind that up until this point, there have been essentially two models for dealing with non-governed spaces in the post-9/11 world, Scharre argues.
“First, you can send in 100,000 troops in and occupy and try to rebuild it – that’s a model that has costs millions in dollars and thousands in lives,” he says.
The other model is drones and air attacks, “which don’t seem to ever fully solve the problem,” Scharre adds. “In Syria, in Anbar, Iraq we’re grappling with this.”
Kunduz could underline the need to consider new models, he says – “one where US soldiers aren’t fighting, but some level of support is reasonable.”
- “Many military conflicts started with the silent connivance to the ideas of one people’s superiority over others. In this sense the modern ideologies of exceptionalism are extremely dangerous,” Naryshkin stated.
- In the heady days of the Cold War, Americans tended to view Soviet decision making as a black box: You know what goes in, you know what comes out, but you are clueless about what is happening inside. Soviet policy was thus believed to be both enigmatic and strategic. There was little room for personality or personal philosophy; understanding the system was the only way.
- There's a quote that's often attributed to Winston Churchill: "Russia is never as strong as you fear or as weak as you hope."
- Both sides of the debate are correct—but neither side is telling the whole story. As a good friend on the Hill recently told me: “In political communications, facts are an interesting aside, but are completely irrelevant. What we do here is spin.” That’s exactly what’s happening here—both sides are selectively cherry picking facts to make their case—spin.
- Danny Dalton: Some trust fund prosecutor, got off-message at Yale thinks he's gonna run this up the flagpole? Make a name for himself? Maybe get elected some two-bit congressman from nowhere, with the result that Russia or China can suddenly start having, at our expense, all the advantages we enjoy here? No, I tell you. No, sir! Corruption charges! Corruption? Corruption is government intrusion into market efficiencies in the form of regulations. That's Milton Friedman. He got a goddamn Nobel Prize. We have laws against it precisely so we can get away with it. Corruption is our protection. Corruption keeps us safe and warm. Corruption is why you and I are prancing around in here instead of fighting over scraps of meat out in the streets. Corruption is why we win.
- Bryan Woodman: But what do you need a financial advisor for? Twenty years ago you had the highest Gross National Product in the world, now you're tied with Albania. Your second largest export is secondhand goods, closely followed by dates which you're losing five cents a pound on... You know what the business community thinks of you? They think that a hundred years ago you were living in tents out here in the desert chopping each other's heads off and that's where you'll be in another hundred years, so, yes, on behalf of my firm I accept your money.
- “The ‘Russian’ attitude,” Isaiah Berlin wrote, “is that man is one and cannot be divided.” You can’t divide your life into compartments, hedge your bets and live with prudent half-measures. If you are a musician, writer, soldier or priest, integrity means throwing your whole personality into your calling in its purest form.
- Russia is a more normal country than it used to be and a better place to live, at least for the young. But when you think of Russia’s cultural impact on the world today, you think of Putin and the oligarchs. Now the country stands for grasping power and ill-gotten money.
There’s something sad about the souvenir stands in St. Petersburg. They’re selling mementos of things Russians are sort of embarrassed by — old Soviet Army hats, Stalinist tchotchkes and coffee mugs with Putin bare-chested and looking ridiculous. Of the top 100 universities in the world, not a single one is Russian, which is sort of astonishing for a country so famously intellectual.
This absence leaves a mark. There used to be many countercultures to the dominant culture of achievement and capitalism and prudent bourgeois manners. Some were bohemian, or religious or martial. But one by one those countercultures are withering, and it is harder for people to see their situations from different and grander vantage points. Russia offered one such counterculture, a different scale of values, but now it, too, is mainly in the past.
- 1) Xi removed over 28,000 officials in 2 years. This is old data from early 2015. Officials no longer go to high-end restaurants, wear luxury. Most senior officials who sent their kids and wives to foreign countries have recalled their kids and wives back. Those who didn't was told crystal clear that they will be sidelined. Can any other leader around the world do that, at such a large scale?
2) CCP turned itself from a communist dictatorship and autarky in 1978 to a capitalist technocratic oligarchy and largest trading country in 2015, gradually, without major political turmoil. (Viewed from today's color revolution standard, Tiananmen Square in 1989 is child's play.) Can any other polity in the world claim the same success?
It's 11:26pm on Monday night, we're watching Dark Matter and the news has come out that the Trans Pacific Partnership has been signed off. Given that we've not actually been allowed to see what the full detail of the treaty contains and the only parts that we have seen have been leaks that actively threaten our ability to make our own laws and maintain our institutions (hello PBS), this is not a thing that I am happy about.
So on top of that, news has also come out that a Russian jet has violated Turkish airspace. This is also a thing that fills me with not happiness. Especially considering the fact that when Russia first fully entered the conflict in Syria they demanded that NATO stay out of Syrian airspace. The amount of dick swinging going on at the moment pretty much ensures a massive cock up.
Oh yes, the icing on the cake is the fact that the mandatory data retention regime backed by both the Coalition and the Labor party is going to come into play in about a week. This is despite the fact that there are still questions about who the hell is going to pay for it.
So wheee, it's a wonderful world really.Blog Catagories: Politicsthe world
The theme of this blog entry was triggered by a set of slides that were presented at this OSCON this year on the topic of flow. Flow being the wonderful energised state where you are fully focused upon and enjoying
the activity at hand.
The conference presentation goes on to describe what the presenter thinks are the criteria needed for when you are coding, but I think there is a degree of generality here that can be applied to anything technical or skilled. They were described as:
- G = Clear, attainable goals
- F = Immediate and relevant feedback
- S = Matched Skill and Challenge
For myself, I think I can add at least one other criteria
- A = Available Time
In terms of my tinkering away at little software projects, my most recent project has been npyscreenreactor. npyscreen is a Python library around the Python curses bindings. npyscreenreactor is an implementation of interfacing that library with the Python Twisted library. Twisted is an event driven networking engine for python. The reactor part of the name refers to a design pattern for how to write event based service handlers and have them run concurrently. (See Reactor Pattern)
The project was written to support virtualcoke. virtualcoke is an emulator of the behaviour of the PLC that drives the UCC Coke Machine. This is written primarly to avoid club members needing to have access to the coke machine to test code to speak to the machine and the development of the reactor was needed to enable use of the PyModbus Twisted module.
This project, npyscreenreactor, has taken sometime to come to fruition with an initial working release of the code in March 2015, some bug fixing in June, working examples in August and probably what will now be a
stable version in September.
For this the goal, feedback, and skill have been there. However, the available time/energy has not (due to other commitments, such as work). The wider project that will use virtualcoke, I still need to throw some energy at, but it is now lower down my list of priorities.
In things apart from this, flow has been less forthcoming of late and I’ll need to work on it. The challenge being to set up a positive reinforcing cycle where the achieving the goal generates warm fuzzies and more enthusiasm to work harder.
Status of the Submission
As of August 15 the Department of Foreign Affairs and Trade of the Commonwealth of Australia stated that it "continues to welcome public submissions and comments on Australia's participation in TPP negotiations: (http://dfat.gov.au/trade/agreements/tpp/submissions/Pages/submissions.aspx).
However, I do most of my early walk planning and visualization in Google Earth before moving to Garmin Basecamp to generate walkable maps. I wanted a way to hook John's database of GPS logs into Google Earth, so that I could plan walks more effectively. For example, John often marks gates in fences, underpasses under major roads, and good routes through scrub in his GPS tracks.
After a fair bit of playing, I ended up with this KML file which helps me do those things. Its basically magic -- the file is just a link to a search engine which has a database of GPS waypoints based off walks John and I have logged. These are then rendered in Google Earth as if they were in a static KML file. You can also download the search results as KML for editing and so forth as well.
So, I'd be interested in other people's thoughts on if this is a useful thing. I'd also be very interested in other donated GPS logs of walks and bike rides around Canberra, especially if they have waypoints marked for interesting things. If you have any comments at all, please email me at firstname.lastname@example.org.
Tags for this post: walks gps search google earth
Related posts: HP iPaq GPS FA256A; MelbourneIT are into search engine optimisation?; Historical revisionism; Searching for a technorati search plug in for Mozilla Firefox; Well, that's Google blog search live then; Google book search
Interactive map for this route.
Tags for this post: blog pictures 20151001 photo canberra bushwalk
PAPR is the Power Architecture Platform Reference document. It’s a short read at only 890 pages and defines the virtualised environment that guests run in on PowerKVM and PowerVM (i.e. what is referred to as ‘pseries’ platform in the Linux kernel).
As part of the OpenPower Foundation, we’re looking at ensuring this is up to date, documents KVM specific things as well as splitting out the bits that are common to OPAL and PAPR into their own documents.
I am glad I came back for the second half -- to be honest I was pretty bored with the first half (a bike path beside a major road mostly), whereas this is much more like walking around in nature. The terrain is nice, no thistles, and plenty of horses. A nice afternoon walk overall.
Now back to reviewing Mitaka specs.
Interactive map for this route.
Tags for this post: blog pictures 20150930 photo canberra bushwalk
Interactive map for this route.
Tags for this post: blog canberra trail run
Related posts: First trail run; Chicken run; Update on the chickens; Boston; Random learning for the day
Being involved with teaching young students to code, I have come to the tentative conclusion that many coding kids have not actually been taught programming. This has been going on for a while, so some of this cohort are now themselves teaching others.
I have noticed that many people doing programming actually lack many of the fundamental skills that would make their programs efficient, less buggy and even just functional.
A few years back, Esther Schindler wrote an article Old-school programming techniques you probably don’t miss (ComputerWorld, April 2009).
Naturally, many (most!) of the things described there are familiar to me, and it’s interesting to review them. But contrary to Esther, I still do apply some of those techniques – I don’t want to miss them, as they serve a very important purpose, in understanding as well as for producing better code. And I teach them to students.
Programming is about smartly applied laziness. Students are typically aghast when I use that word, which is exactly why I use it, but the point is that smartly applied laziness is not the same as slackness. It’s simply a juicy way of describing “efficient”.
Suppose you need to shift some buckets of water. You could carry one bucket at a time, but you’ll quickly find that it’s hard on your arm and shoulders, as well as wasting the other arm you have. So we learn that if you have more than one bucket to shift, carrying only one bucket at a time is not the best way of going about it. Similarly, trying to carry three or more buckets is probably going to cost more time than it saves, as well as likely spilling water all over the place.
Thus, and this was of course worked out many centuries ago, carrying two buckets works best and is the most efficient as well as being quite comfortable – particularly when using a neat yet simple tool called a yoke (as pictured).
Inevitably, most kids will have at some time explored this issue themselves (perhaps while camping), and generally come to the same conclusion and insight. This is possible because the issue is fairly straightforward, and not obscured by other factors. In programming, things are not always so transparent.
Our modern programming tools (high-level languages, loose typing, visual programming, extensive APIs and libraries) enable us to have more convenience. But that convenience can only be applied judiciously when the programmer has the knowledge and skills required to make appropriate judgements. Without that, code can still be produced rapidly, but the results are not so good.
Some would say “good enough”, and that is somewhat true – when you have an abundance of computing power, memory and storage, what do a few bytes or cycles matter? But add together many of those inefficiencies, and it does become a rather dreadful mess. These days the luxury of abundance has become seriously abused. In our everyday life using laptops, smart-phones, tablets and other devices, we frequently encounter the consequences, and somehow regard it as “normal”. However, crashing apps (extreme case but very common) are not normal, and we should not regard any of this as good enough.
I see kids being taught to code using tools such as MIT’s Scratch. I reckon that’s fine as a tool, but in my observations so far the kids are only being shown how the system works. Some kids will have a natural knack for it and figure out how to do things properly, others will plod along and indeed get through by sheer determination, and some will give up – they might conclude that programming is not for them. I think that’s more than a pity. It’s wrong.
When you think about it, what’s actually happening… in natural language, do we just give a person a dictionary and some reference to grammar, and expect them to effectively use that language? We wouldn’t (well actually, it is what my French teachers did, which is why I didn’t pick up that language in school). And why would computer programming languages be different?
Given even a few fundamental programming techniques, the students become vastly more competent and effective and produce better code that actually works reliably. Is such understanding an optional extra that we don’t really care about, or should it be regarded as essential to the teaching?
I think we should set the bar higher. I believe that anyone learning programming should learn fundamentals of how and why a computer works the way it does, and the various techniques that make a computer program efficient and maintainable (among other attributes). Because programming is so much more than syntax.