Showing posts with label hacking. Show all posts
Showing posts with label hacking. Show all posts

Monday, June 06, 2011

Coding Day Dublin

Can you do anything useful in a day? This is the premise of code day where computer programmers are invited to work with scientists for a day to try solve a real problem the scientists are trying to deal with. "For those unfamiliar with a code retreat, it’s a hack day with a focus, the angle placed solidly on solving interesting technical problems." Hacking here means writing short programs that do something cool.

On the 28th of May I spent a day in the Science gallery trying to create fixes for various small problems. There were about two dozen people there with about a third of the scientists. Declan, Andrea and Qamir who organise loads of these programmers meet ups around Dublin ran the event and helped make it a really friendly atmosphere.

The small projects that seemed to work best involved visualisation. The problem of taking data and presenting it in an interesting way seems just right for a few hours timeframe. Possibly this is because rather than a complex scientific issue all that has to be understood is what sort of information needs to be conveyed.

It is quite difficult to get up to speed on a problem in such a short period of time. I had a really interesting talk with Scrazzl but even understanding their system took so long I felt like I was wasting their time. This meant we spent a lot of time just understanding the basic background of someones research. Treemetrics were also doing some really interesting Operations research work on forest management. It was really interesting to hear what people were working on but perhaps a day that was focused on one theme might allow the coders to read up and get some understanding in advance. Not that I think all such coder days should have a single theme just that it might be interesting to try one that did.

One of the most interesting projects at the day was fight malaria at home. This is a distributed computer project like SETI at home or folding at home. The aim is to test drug molecules against proteins present in malaria to check for potential binds. This could than guide researchers as to what drugs are worth testing in real life. The guys from the project were really friendly and interesting. If you do have knowledge of BOINC or even just want to learn it it would be a great project to help out on.

Instead of just criticising are very fun and worthwhile day I will give an example of the sort of focused task I am talking about.

Something that is big, widespread and multidisciplinary. I am reading The Fever by Shah at the moment which made me think Malaria was one such problem. Off the top of my head diarrhea diseases, political expenses, maths education and are all areas that people from many areas could come together and do some interesting projects/demonstrations over a day on. But malaria is one of those big thorny problems that a hackday about could be really cool. I have a Google Document of possible ideas here

Friday, March 11, 2011

Analog Computer Museum

This week I was lucky enough to visit the Analog Computer Museum near Frankfurt. Bernd who owns and protects the collection I have known for years via email so I was happy out to finally get to meet him and his wife. These Analog computers carry out calculations using electronic components.


Bernd works as a software archeologist. That is he updates the systems of banks and such that are written in OS' and languages that almost no one knows anymore. If the software running your bank was written int he 60's and you want to get it running on Linux Bernd is the man to call. These languages are so obscure they make the COBOL look like the Beatles. The job seems to pay well enough as he can afford warehouses to keep his computer collection in and a collection of vintage sports cars he drives at terrifying speeds on the local autobahns.



Yes I take my wife to Computer Museums but in fairness shes a physicist and I suspect she thought this rocked as much as I did



These machines are ideal for real time simulation. This Telefunken currently simulating a car was used to train nuclear powerstation operators with simulations of various 'problems'


Next time you call rand() think of this board that was used to generate random numbers through electronics


Old school fractal printed out and taped to the side of a Vax. It is like chalking up a kill on the side of a WW2 fighter plane. Computing from the time where men were men and debuggers were nervous.

I cannot rationalise why these analog computers are so cool (pics here). I think its to do with getting to the bare metal of a computation. Also something of the history of these machines is amazing. Looking at the circuit boards you can imagine national characteristics they describe. The German machines based on mathematical abstractions are beautifully clean (and easy to fix apparently). The Japanese machines were a mess like their remote controls. The British machines had a distinct boffin feel to them. The machines from communist countries really seems like a scramble of clever but under resourced hacks. The American machines were big brash and heavy.


Kevin Kelly claims that a technology never dies

What happens is that most technologies become obsolete, diminish their role, but they don't disappear--more idea-based and can be resurrected more easily. Seems like a silly claim: the hand-axe, the arrowhead--they don't exist any more. And that's what I thought too... Looking on the Internet was able to find an example of whatever the challenger had given to me: brand new steam-powered valve for a steam-powered car; they're making flint axes exactly the same way, using exactly the same tools to the point they are almost indistinguishable from the original; archeological artifacts, making in huge numbers today.

But I really worry that the knowledge of many of the engineers who created these machines will be lost. One thing is that the analog museum really wants donations of machines that may be thrown out. If you see a box of the brand Dornier, TeleFunken, Gould, Aritma, BBC, Electronic Associates Inc, Solartron or even just something you think might be of interest send him an email. Even parts of these machines could be really useful to help repair the computers he has.

I do not think these machines are purely of historic interest. It is possible that in the future analog computers will be used in the real time simulations they excel in. One area I think they could be useful for is search engines. Linear algebra calculations are at the heart of modern search engines. this is described in
The $25,000,000,000∗ Eigenvector the linear algebra behind google and How Google Finds Your Needle in the Web's Haystack

These calculations do not need to be precise (the google algorithm uses random walks) which removes one of the big objections to analog computers.

George Dyson in the this years edge question 'What Scientific concept would improve everybody's cognitive toolkit?' describes a search engine based on analog computers here
Analog computing, once believed to be as extinct as the differential analyzer, has returned. Not for performing arithmetic — a task at which even a pocket calculator outperforms an analog computer — but for problems at which analog computing can do a better job not only of computing the answer, but of asking the questions and communicating the results. Who is friends with whom? For a small high school, you could construct a database to keep track of this, and update it every night to keep track of changes to the lists. If you want to answer this question, updated in real time, for 500 million people, your only hope is to build an analog computer. Sure, you may use digital components, but at a certain point the analog computing being performed by the system far exceeds the complexity of the digital code with which it is built. That's the genius that powers Facebook and its ilk. Your model of the social graph becomes the social graph, and updates itself.


Analog computer methods of calculating eigenvectors have been described decades ago (pdf here).

It is possible that the techniques of analog computers could be the future of search engines. We should make some effort to save these machines, any manuals written on them and if possible some of the knowledge of those who made and used them.

Tuesday, March 27, 2007

Security as a status symbol

This article is about how a lot of security equipment is to advertise "hey I have things that are worth stealing".

This is like Eminem wearing a bullet proof vest to show that he annoys people enough that they would be willing to shoot him. Or how dodgy Russian mafiosas drive hummers around Dublin like they are in a war zone.

It is slightly different from "security theatre" as Schneier calls it as it is not designed to provide the illusion of security just the illusion of a need for security.
There are many similar things to this in computer security,
Symantec have a response unit housed in a nuclear bunker. This is a good way for the DR Strangelove cachet to rub off on people checking for botnets.

Monday, March 26, 2007

Search engine optimiziation malware

I Just read this

It describes how they discovered a bug. They knew this bug would be searched for. So they made a page about it and did some of the standard search engine boosting things to get people to the page.
Now suppose a bad man discovers an exploit. Say “firefox extension update” exploit. Now he creates a piece of malware that exploits this exploit. He also creates a page about this exploit and about the malware that includes a patch. There are so many bleeping computer type forums and such that he does not even need to fake a legitimate looking url. Now he has 2 pieces of malware being spread the exploit and the patch. And google will lead people to the malicious patch.
I doubt the malware would stay up for long but the use of search engine optimiziation to spread malware is probably going to happen.

Tuesday, March 13, 2007

How crap was the past 2?

Let the cat out of the bag

So in the middle ages they used to hide cats in bags instead of piglets and sell these to idiots? Had these people never heard of spam filtering?
You go down to the bag you oink if it oinks back it is spam and thus worth buying. If it meows it is a cat and you do not buy. How crap were hackers then? It is a straight decision you did not even have to wait for Bayes to be born to come up with that one.

Tuesday, February 27, 2007

Probable Cause

Britneys hair, abortion, police checks where is your probable cause?
FENSTER
You guys got nothing on me. Where's your probable cause?
VOICE (O.S.)
You're a known hijacker. You're sweating like a guilty motherfucker. That's my p.c. Save us the time. Tell us where the truck is.
Fenster knocks on the table.
FENSTER
HELLO? Can you hear me in the back? P.C.
He looks under his chair.
FENSTER (CONT'D)
Where is it? I'm lookin'. It's not happening. What's going on with that?

Before testing for something you need a reasonable expectation a reasonable suspicion that it is true. That is why we have search warrants and why rare diseases should only be tested for if there is a family history of them. If you test everyone for something that is rare even with a very accurate test you end up mainly with false positives

Say 1% of people have something nasty you want to test for. Say the test is 99% correct if it says you are on drugs. That means that the test is actually 50:50. 2 people in a hundred will be found to be on drugs, only one will be.

For nasty things that are rarer such as inherited diseases or being a terrorist the innocent:guilty ratio based on an “accurate” test is even worse.

Thursday, February 15, 2007

Conning the Sensible

How can the national lottery make large numbers of sensible players pick similar numbers? These are the players who use some form of random number generator to pick their numbers.

No one sensible trusts electronic voting systems as they are currently exist. However numerous other algorithms are enforced by computers that are not even open in the sense that we know how they should work. For example the quick pick in the lotto.

This algorithm is supposed to pick a random set of six numbers that have not been already picked. No one can guarantee randomness so the lotto terms and conditions must say “we are not to blame if our random number generator turns out to be faulty”.

Large sets of numbers are picked every week by the same people. If you know that a certain set of numbers is always bought on a Saturday you can generate it as a “random” quick pick on the Friday. Should the numbers be a winner you have not generated an already existing number so it is difficult to prove that the lottery is giving falsely random quick picks.

It is hard to tell that the numbers generated by the quick pick genuinely are random. Many lists of numbers look random to people if they include less sequential numbers then they should and if they cluster numbers around a low value.


The lottery could generate pseudo random numbers that appear random and unless large samples of these quick pick numbers are available non randomness is difficult to prove.


I do not believe that either of these schemes are practical. The lottery makes too much money to risk losing their licence to an out and out fraud like this. Too many people would have to be involved and they do not have the plausible deniability of schemes to con the foolish.

Also an independent observer observes the lottery draw itself, the national lottery would have to be complete chuckle monkeys if they did not also have an observer ensuring the correct operation of other aspects of the draw such as the selection of quick picks.

So in order to cheat the sensible a lottery could bias the selection of quick pick tickets. This would be a bad idea but users of the lottery should insist on an independent analysis
of the quick pick system as errors in pseudo random number generators are common.

Monday, February 12, 2007

How to win the lottery

The only way to win the lottery is to run it. So if you run it how do you maximise your revenue? You maximise the number of times you have big jackpots. Certain people bet on every jackpot but a sizeable number only bet when the jackpot goes above a certain number of millions.

To increase the number of times the jackpot is large the lottery should increase the number of people betting on the same numbers. So if the lottery can get large numbers of people choosing numbers that are chosen by other people the lottery will be won less often and there will be more big jackpots.
There are three classes of lottery players
• Foolish-pick obviously popular combinations
• Sensible-use some truly random method to pick combinations
• Intelligent-use knowledge of foolish plays to pick unpopular combinations.

This is the start of a series of articles on how the lottery can manipulate ticket buyers into choosing similar numbers thus increasing the number of tickets they sell.