I would like to draw your attention to a few splendid projects which are, like Jack Churchill, The Right Sort Of Mad.
MOVfuscator compiles your code to nothing but MOV instructions. Just imagine, now that you're not using all the CPU area wasted for tiresome nonsense like ADD or NOP [EAX + ...], Intel could turn it all into cache! And it'll be super-efficient because the CPU doesn't have to decode whether each instruction is a MOV or something pointless like JNE!
ctypes.sh, because you always wanted to care about pointers in your bash scripts. I know I do! Mmmm pointers, I love 'em.
[update 5 Jun 2017]
reptyr takes an existing running program and attaches it to a new terminal. Not very portable, unfortunately, but still useful and a really nifty hack
My gripe from the last couple of years about scrums not being fed straight is at last being addressed a little bit by World Rugby. Feeds were a lot straighter in this tournament than they have been over the past many years, and a few of the most blatant skew-whiff feeds were penalised. The recent rule changes about setting up the scrum appear to have addressed the problem of scrum collapses at least a bit, but more work is still needed.
I have a new gripe though - I think that referees are playing Advantage for too long. They are currently playing it after an infringement until a team gets a significant advantage. It should be scaled back. In rugby league, advantage doesn't last anything like as long, and the game is better for it.
I propose that penalty advantage should finish when the team with advantage has carried the ball forward past the point at which the penalty would be awarded, even if only momentarily, or has kicked the ball forward no matter what the result of the kick. Knock-on advantage should end when the second player has possession or the ball is kicked. I realise that this makes advantage worth a lot less. As a result teams might be tempted to just stop playing so that there is no advantage. Therefore I also propose that not trying to take advantage should itself attract a penalty. It also makes penalties worth less, as you are less likely to get "two bites at the cherry". I'm fine with that. And it makes the punishment for technical infringements less onerous, which I'm also OK withI prefer a game with lots of running, driving mauls and so on leading to tries, as opposed to a series of penalty goals arising from pedantic nit-picking. Again, rugby league gets this right.
I also have a minor gripe about the amount of time taken up by kickers doing ridiculous dances. They have a minute to take the kick, and the few stupid dances that I timed averaged just over 40 seconds. I propose cutting the allowed time from when the ball is placed on the kicking tee to when boot strikes ball to 15 seconds.
It is, of course, still not Real Cricket, but I've enjoyed this world cup so far. And I'm even enjoying it after England were knocked out and proved that ICC stands for Inter-Colonial Cup. I have a couple of awards to give out.
Best facial hair
Virat Kohli of India
Worst facial hair
Moeen Ali, for the sin of having a full beard but no moustache
I would have given Best Facial Hair to John Mooney of Ireland, but while he has more than Kohli, it's scruffy and looks like he just couldn't be arsed to shave. Kohli's may be a micro-beard, but it is at least deliberate. If Mooney wishes to be considered for this prestigious award in future he needs to man up and look like a tramp for a few weeks until his beard matures into a prodigious hedge, instead of just looking like a scruffy student.
When storing a past event, always convert it into UTC and store it that way (I knew that). But when storing a future event (esp. if it's more than a year in the future), store it in the local timezone and only convert to UTC on the given day. This way you can properly handle the changes to time zones and/or daylight savings that might happen in the meantime.
Dustin Kurtz works for a publisher, and writes on their blog. His thesis is that authors do themselves a dis-service if they link to Amazon, and that they should instead link to some random small independent bookshop if they want to visitors to their websites to buy their wares.
In this piece, he omits the single most important word in the whole of the publishing industry. That word is "readers". He does mention customers twice, but only in the context of making sure that a bookshop is willing to post stuff to them and when he says "even if not a single customer finds them through you, [the bookshop] will be happy" - which is wrong. A bookshop to whom you direct no custom at all won't be happy. They won't be sad either, they just plain won't care, or even notice. Well, I suppose they might be pissed off if they made a special effort to stock your wares when you told them you'd be linking to them, and then didn't sell any. At no point does he consider even for a moment what readers, the people who are ultimately paying his salary, want.
Actually, the whole piece is confused. For example, he says that most people will go straight to Amazon in the first place and not visit author websites at all (which is probably true) but then thinks that that is a good reason for authors to not link to Amazon. Errm? The links to Amazon are for people who have visited the author's website and have not gone straight to Amazon. What people do who go straight to Amazon is irrelevant. Once someone has come to your website, they are, provided your site doesn't suck, yours, and they will keep coming back. Just like I keep going back to Charlie Stross and Hugh Howey's websites, via their RSS feeds.
But anyway, back to readers. What readers want is a combination of convenience and reliability. Amazon does both of those brilliantly, and with excellent customer service for the very few times that they screw up.
So, authors - please don't link to small local bookshops. It's far less convenient for your readers, who end up with a bazillion separate accounts with a bazillion separate online shops, and have to type all their details in a bazillion times, often fighting against idiotic web forms that simply won't accept their address* or phone number** or email address*** or whatever. Once the reader has fought through all that, he has to hope that your order fulfillment process works, that you know how to get stuff reliably to his door, and that if anything goes wrong you have heard of customer service.
Nah. Far better to just use Amazon.
In addition, I hear anecdotally that some authors make more money in Amazon Affiliates kickbacks than they do in royalties. If you don't link to 'em, I'll go there myself anyway if I want to buy your stuff.
* too many insist that all addresses have a state or a county, or don't have enough lines
** many won't accept phone numbers from other countries
*** many won't accept addresses with a + sign in them
It's really annoying that there still isn't universal support for MathML. Things have got better recently though, with Safari finally supporting it. Of the major browsers, though, there are still two that don't.
First, IE. It doesn't matter. It is only used for three things: first, to download a browser that doesn't suck; second, if it is chosen by someone who is stupid, ignorant or malicious; third, by people who need to compare browsers.
Second, Chrome. Despite its lack of MathML, Chrome is IMO the best browser out there. It works on multiple platforms, has lots of extensions available, and has very good support for synchronising things like bookmarks and open pages across devices.
And now there's a plugin for it to support MathML! And of course Chrome supports it without a plugin on iOS, because it uses the Safari rendering engine there.
update: Safari on the desktop still doesn't render it particularly well, despite it working just fine on my phone.
I doubt it'll happen - just about every mega-project that flares up in the news never actually happens - but one thing in this article grabbed my attention.
" Many have been asking whether Central America needs two canals, even in an age of growing world trade. "
No-one who cared about free trade would ask that. Competition is Good. While there are other routes between the Atlantic and the Pacific, they are either very long (around south America) or not reliably open (Northwest Passage). The Panama canal is also not big enough for many modern ships, and still won't be even after the current upgrades are complete (see image to right). Broadly speaking, the larger your ship the cheaper it is to run per ton-mile of cargo, and it's less polluting too. And, of course, shorter routes between the same two ports are also cheaper.
I recently ordered a Huawei 3G-to-wifi router thingy from Amazon. It's crap and doesn't work so, after ordering a replacement made by another manufacturer, I had to return the duff one.
Amazon make this really easy. All I had to do was fill in a form on their website, print out an address label with a barcode, stick that on an envelope, and take it to a Collect Plus franchise. There are bazillions of these, even in ruralistan. This is far more convenient than having to take something to a post office which is only open for a couple of hours a day because they want to go out of business.
And best of all, the newsagent I took it to could scan that barcode, and my refund arrived within the few minutes it took me to walk back home.
The mark of a business that knows about customer service is what they do when something goes wrong. When everything goes right it's easy to please your customer, but when it goes wrong, such as when you've sold something that doesn't work, it's much harder. By making returns so very quick, easy, and quibble-free, Amazon have done it. Bravo!
Posted at 18:57
by David Cantrell keywords: amazon
Not a bad tournament this year, the stand-out game being the low-scoring match between Scotland and Ireland, and my man of the tournament was Ireland's Paddy Jackson.
As usual I'll bitch about scrums. Not a single scrum was fed straight, and despite the recent rule changes there were too many resets and infringements leading to free kicks and penalties. The IRB must instruct referees to apply the damned laws: to punish crooked feeds at the scrum. And if they can't come up with a formulation of the laws that will permit putting pressure on before the ball is fed without the possibility of moving the scrum, then they need to change the laws so that when the scrum is set it is without pressure. I'd hate to see scrummaging disappear from the game, as it has in the League game, but I fear for it if the IRB and referees don't get a grip.
Finally, a worrying development is players arguing with officials and trying to tell them what to do. This is supposed to be a gentleman's game, not Association football, and that behaviour Will Not Do. I'd like such dissent to result in a free kick or a penalty (as the laws already provide for), but realise that there are often players from both sides arguing. So I propose five minutes in the sin bin.
Apparently, perl is rubbish because <whine>the tools aren't friendly</whine>.
Well, if that's the case, then python is too:
$ git clone git://github.com/rg3/youtube-dl.git Cloning into youtube-dl... ... $ cd youtube-dl/ $ make Could not find platform independent libraries <prefix> Could not find platform dependent libraries <exec_prefix> Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>] 'import site' failed; use -v for traceback Could not import runpy module pandoc -s -w man README.md -o youtube-dl.1 make: pandoc: Command not found make: *** [youtube-dl.1] Error 127 $ dpkg -l|grep python ii python 2.6.6-3+squeeze7 interactive high-level object-oriented language (default version) ...
Posted at 13:30
by David Cantrell keywords: geeky | rant