As new goodies are unveiled in Geneva I get a steady stream of links to videos of cars in my inbox. The one thing that strikes me about a lot of these videos is how they are not targeted at anyone even remotely interested in cars. They are touchy-feely, dull marketing wankery of the worst kind.
When Alfa Romeo launched the 8C they released a very nice video with some vintage footage followed by various gorgeous shots of the Alfa Romeo 8C driving along country roads. There was just one problem. A big one. The soundtrack. Dull muzak.
I mention this example because the one defining characteristic of the 8C is not so much its amazing looks, but the lovely sound it makes. Anyone who has been in the presence of an 8C, or better yet, driven one, knows that the sound it makes is pure glory. It growls and howls and the transition from one to the other, and back again, is just wonderful. Even next to most Ferraris, the 8C has the better engine and exhaust sound.
While the 8C film released by Alfa Romeo a few years ago was probably the most grave example of automotive promotion incompetence, most manufacturers seem to hire equally clueless directors. Why not get someone who actually cares about cars?
A couple of years later Alfa Romeo released another film. This time for the MiTo GTA. While there was a bit of engine noise at the start of the film, the rest of the thing had some of the tackiest rubbish music I've ever heard. Why!?
Nostalgia
I fired up a virtual machine running Windows tonight. I wanted to have a look at some windows only CNC software, and since I don't have any machines that run Windows anymore, the way to do it was to create a Windows image and run it on a virtual machine.
Years ago I used Windows for running Photoshop and various music software. Commercial stuff for which there is no good open source substitute.
Getting a Windows machine to run law-latency audio software reliably is about as easy as convincing Richard Stallmann he is being an annoying turd when he tactlessly, and rather ignorantly, insists on calling Linux "Gnu/Linux". So I ditched Windows in favor of OSX for running commercial software (and discovered a wonderful world of reasonably priced, non-tacky software in the process -- in addition to being able to run all my open source stuff on the same OS). Eventually I grew fond enough of OSX to use it as my main workstation OS. I still have various machines running Linux and FreeBSD, but on the desktop I now run OSX.
In any case, tonight I fired up Windows.
Two things struck me:
Years ago I used Windows for running Photoshop and various music software. Commercial stuff for which there is no good open source substitute.
Getting a Windows machine to run law-latency audio software reliably is about as easy as convincing Richard Stallmann he is being an annoying turd when he tactlessly, and rather ignorantly, insists on calling Linux "Gnu/Linux". So I ditched Windows in favor of OSX for running commercial software (and discovered a wonderful world of reasonably priced, non-tacky software in the process -- in addition to being able to run all my open source stuff on the same OS). Eventually I grew fond enough of OSX to use it as my main workstation OS. I still have various machines running Linux and FreeBSD, but on the desktop I now run OSX.
In any case, tonight I fired up Windows.
Two things struck me:
- Windows is really annoying. How can people use this OS every day for their work? It is like an attention-seeking little kid that keeps tugging at your trouser leg and throwing temper tantrums ALL THE FRIGGIN TIME if you try to ignore it!
- I had forgotten about what a terrible program Acrobat Reader is. Holy crap. How is it even possible for Adobe to so actively sabotage arguably the most important product they have ever had? Adobe, if you are reading this: have a look at "Preview" on OSX. No really, do have a look.
Fragmentation
Years ago someone tried to convince me that the USENET would be replaced by blogs, RSS feeds and comments -- because this would be so much better. While I didn't doubt that the USENET would be greatly diminished, and eventually disappear, as the central arena for public discourse on the net as this newfangled interweb grew in popularity, I never did subscribe to the idea that things would become significantly better just by using blogs and RSS.
I am sad to say that I was right.
In order to keep abreast of all the various discussions or conversations I am having, I have to visit more than a dozen sites. And those are just the ones I care about right now. There are a few dozen sites that I have forgotten about. Where I will never return to read what people have since contributed to some discussion, nor will I ever respond to them. It isn't because I don't care. It is just because it is turning into a bloody easter-egg hunt.
There are lots of sites that try to neatly tie the fragmented conversations you have together. But none of them have succeeded to the degree where the problem is even close to being "solved". Blogs, Twitter, PhpBB, Facebook, Google Groups etc; it is just one big fragmented mess. With lots of partial aggregation-systems thrown in just to add to the confusion and fragmentation.
Don't get me wrong; the USENET was not perfect -- in fact I'd have to say that the USENET has been completely irrelevant for many years now because of its many shortcomings. But it did solve some problems that a lot of people have yet to re-invent properly.
And that is what bugs me: why do we keep reinventing the wheel and then forget about problems that people at least tried to address 25-30 years ago?
From a technical point of view, Google Wave is probably one of the more promising technologies I've seen. The problem is that most people do not seem to understand what makes Google Wave a good solution. Heck, it even took me a few hours of reading up on the underlying technology to see it, and I care about these things. I kept telling my techie friends to read the specs before dismissing Google Wave. I told them that it takes a bit of time to get it; the underlying ideas are sound. The only problem is that last I checked, the client doesn't really work -- and to the user, the client is Google Wave.
In any case, if you miss my participation in some forum where I've posted something and you have replied, it isn't that I'm ignoring you. It is just that it is such a pain in the ass to follow every place where I've posted something because we've collectively reverted to really, really dumb communication technologies.
I am sad to say that I was right.
In order to keep abreast of all the various discussions or conversations I am having, I have to visit more than a dozen sites. And those are just the ones I care about right now. There are a few dozen sites that I have forgotten about. Where I will never return to read what people have since contributed to some discussion, nor will I ever respond to them. It isn't because I don't care. It is just because it is turning into a bloody easter-egg hunt.
There are lots of sites that try to neatly tie the fragmented conversations you have together. But none of them have succeeded to the degree where the problem is even close to being "solved". Blogs, Twitter, PhpBB, Facebook, Google Groups etc; it is just one big fragmented mess. With lots of partial aggregation-systems thrown in just to add to the confusion and fragmentation.
Don't get me wrong; the USENET was not perfect -- in fact I'd have to say that the USENET has been completely irrelevant for many years now because of its many shortcomings. But it did solve some problems that a lot of people have yet to re-invent properly.
And that is what bugs me: why do we keep reinventing the wheel and then forget about problems that people at least tried to address 25-30 years ago?
From a technical point of view, Google Wave is probably one of the more promising technologies I've seen. The problem is that most people do not seem to understand what makes Google Wave a good solution. Heck, it even took me a few hours of reading up on the underlying technology to see it, and I care about these things. I kept telling my techie friends to read the specs before dismissing Google Wave. I told them that it takes a bit of time to get it; the underlying ideas are sound. The only problem is that last I checked, the client doesn't really work -- and to the user, the client is Google Wave.
In any case, if you miss my participation in some forum where I've posted something and you have replied, it isn't that I'm ignoring you. It is just that it is such a pain in the ass to follow every place where I've posted something because we've collectively reverted to really, really dumb communication technologies.
Hands off my search engines!
There have been rumblings about the EU looking into allegations of lack of fairness in the Google search results. Apparently some web sites that offer their own sort of search services feel they have not been displayed as prominently as they would wish in the search results.
Let me explain what Google does: Google lives and dies by the percieved quality of their search results. If Google serves up results that are not helpful to their users: that hurts user satisfaction. Everything Google does on search is measured against what provides the greatest user experience: "can people find what they are looking for?".
Search is a hard problem. You have billions of web pages, the user enters a few words and in essence, the search engine has to come up with the 10 pages most relevant to those few bits of "intent" that the user provided. Sure, a given search will usually have lots of hits, but we count on search engines to place what we are looking for at, or near, the top of the result set.
If you think that search engines have not been innovating since the interface you see has only changed slightly over the years, you should consider this: the size of the web has been doubling every so many months. Also, since the top spot in a search result can have very direct and easily measurable financial consequences, a lot more resources are devoted to gaming the search engine ranking algorithms.
In effect this means that a lot of people are working to place their content in front of you -- whether relevant for what you are looking for or not. These people are working against you, the user, and the search engines.
For some searches I do, search engines unfortunately give me pretty bad results. For instance, if I look for a web shop that will sell me some gadget and the top 10 results are dominated by price comparison sites or other aggregators of content, that pretty much sucks. It isn't what I am looking for. What I am looking for is, preferably, the best place to buy the gadget or background information that will help me make a decision. If Google observes that I am not too happy about those search results and then decides to change the ranking to give me results I do want, then that is the right thing to do for them and for me the user.
It is that easy.
I find the idea that we would allow government bureaucrats to dictate how search engines rank their results to be a horrible idea. First and foremost because it is dangerous to let governments dictate what is "truth".
Second, because these people are so obviously not qualified -- they do not even understand the basics of the problems a search engine must solve. It is dagerous to even pretend that these people are worth listening to.
One can only hope that this process leads to the education of government bureaucrats though I am not holding my breath.
(disclosure: I've worked for a number of search engine companies, including Google, but I do not work in the search engine industry now. I have no incentive to side with Google, Bing or any other search engine. I do however have justified reasons to fear stupidity in government.)
Let me explain what Google does: Google lives and dies by the percieved quality of their search results. If Google serves up results that are not helpful to their users: that hurts user satisfaction. Everything Google does on search is measured against what provides the greatest user experience: "can people find what they are looking for?".
Search is a hard problem. You have billions of web pages, the user enters a few words and in essence, the search engine has to come up with the 10 pages most relevant to those few bits of "intent" that the user provided. Sure, a given search will usually have lots of hits, but we count on search engines to place what we are looking for at, or near, the top of the result set.
If you think that search engines have not been innovating since the interface you see has only changed slightly over the years, you should consider this: the size of the web has been doubling every so many months. Also, since the top spot in a search result can have very direct and easily measurable financial consequences, a lot more resources are devoted to gaming the search engine ranking algorithms.
In effect this means that a lot of people are working to place their content in front of you -- whether relevant for what you are looking for or not. These people are working against you, the user, and the search engines.
For some searches I do, search engines unfortunately give me pretty bad results. For instance, if I look for a web shop that will sell me some gadget and the top 10 results are dominated by price comparison sites or other aggregators of content, that pretty much sucks. It isn't what I am looking for. What I am looking for is, preferably, the best place to buy the gadget or background information that will help me make a decision. If Google observes that I am not too happy about those search results and then decides to change the ranking to give me results I do want, then that is the right thing to do for them and for me the user.
It is that easy.
I find the idea that we would allow government bureaucrats to dictate how search engines rank their results to be a horrible idea. First and foremost because it is dangerous to let governments dictate what is "truth".
Second, because these people are so obviously not qualified -- they do not even understand the basics of the problems a search engine must solve. It is dagerous to even pretend that these people are worth listening to.
One can only hope that this process leads to the education of government bureaucrats though I am not holding my breath.
(disclosure: I've worked for a number of search engine companies, including Google, but I do not work in the search engine industry now. I have no incentive to side with Google, Bing or any other search engine. I do however have justified reasons to fear stupidity in government.)
Thoughts on interfacing with EMC2
The original plan for my CNC machine was to use an Arduino to take care of the timing-sensitive task of delivering pulses to the stepper drivers. A few things have happened to that plan.
First off I discovered that the power rating of the EasyDriver 4.2 boards is probably going to be a bit too low. The EasyDriver can deliver 750mA to each phase of the motor. This was probably enough for the smaller motors I got from Sparkfun, but the motors that are mounted on my CNC rig draw significantly more current than that so I needed somewhat beefier boards. I can't remember where I got the beefier boards, but they are in the mail by now and can deliver 2A per phase.
Second, I have been skimming the docs for EMC2 and there does not appear to be any easy route to getting the software talking to an Arduino that just takes gcode as input. The easiest way forward seems to use the parallel port to deliver pulses generated by EMC2 to the stepper drivers. The good thing about this is that it means I can benefit from the rich functionality in EMC2. The bad thing about this is that using the parallel port seems to be fraught with its own set of challenges. From the fact that it makes the system very timing sensitive to stories about ratty parallel port interfaces that produce jitter or just fire off spurious pulses when idle.
I think I read something last night about someone using an Arduino to create a lower level protocol and much simpler software aboard the Arduino -- which interfaces with EMC2. I would feel more comfortable with having the Arduino interfacing to the stepper drivers. The parallel ports sound dodgy. I am hoping to find more information on this.
Also, I need to build a PSU and figure out how I want to control the spindle. For now I will probably have manual speed control, but eventually I would like to be able to control spindle speed from software.
First off I discovered that the power rating of the EasyDriver 4.2 boards is probably going to be a bit too low. The EasyDriver can deliver 750mA to each phase of the motor. This was probably enough for the smaller motors I got from Sparkfun, but the motors that are mounted on my CNC rig draw significantly more current than that so I needed somewhat beefier boards. I can't remember where I got the beefier boards, but they are in the mail by now and can deliver 2A per phase.
Second, I have been skimming the docs for EMC2 and there does not appear to be any easy route to getting the software talking to an Arduino that just takes gcode as input. The easiest way forward seems to use the parallel port to deliver pulses generated by EMC2 to the stepper drivers. The good thing about this is that it means I can benefit from the rich functionality in EMC2. The bad thing about this is that using the parallel port seems to be fraught with its own set of challenges. From the fact that it makes the system very timing sensitive to stories about ratty parallel port interfaces that produce jitter or just fire off spurious pulses when idle.
I think I read something last night about someone using an Arduino to create a lower level protocol and much simpler software aboard the Arduino -- which interfaces with EMC2. I would feel more comfortable with having the Arduino interfacing to the stepper drivers. The parallel ports sound dodgy. I am hoping to find more information on this.
Also, I need to build a PSU and figure out how I want to control the spindle. For now I will probably have manual speed control, but eventually I would like to be able to control spindle speed from software.
Subscribe to:
Posts (Atom)