Progressive Era Hacker Griefed Marconi Demonstration

From: Slashdot

nbauman writes “In June 1903, Gugliemo Marconi and his partner Ambrose Flemming were about to give the first demonstration of long-range wireless communication at the Royal Institution in London, which, Marconi said, could be sent in complete confidentiality with no fear of the messages being hijacked. Suddenly, the silence was broken by a huge mysterious wireless pulse strong enough to take over the carbon-arc projector and make it sputter messages in Morse Code. First, it repeated the word ‘Rats’ over and over again (abusive at that time). Then it tapped out, ‘There was a young fellow of Italy, who diddled the public quite prettily.’ Further rude epithets followed. It was Nevil Maskelyne, a stage musician and inventor who was annoyed because Marconi’s patents prevented him from using wireless. It was the first hacking, to demonstrate an insecure system.”

  <a href="http://twitter.com/home?status=Progressive+Era+Hacker+Griefed+Marconi+Demonstration%3A+http%3A%2F%2Fbit.ly%2FrDZLUt" title="Share on Twitter"><img src="http://a.fsdn.com/sd/twitter_icon_large.png"></a>

Read more of this story at Slashdot.


Insects Rapidly Becoming Resistant To GM Corn

From: Slashdot


DrHeasley writes “BT corn, which contains the DNA for Bacillus thuringensis toxin, was once hailed as the final solution for insect predators on this valuable crop. Now it turns out that insects, and evolution, are smarter than we thought, and the corn that contains the built in pesticide is no longer reliably protected.”

  <a href="http://twitter.com/home?status=Insects+Rapidly+Becoming+Resistant+To+GM+Corn%3A+http%3A%2F%2Fbit.ly%2FsQwkUp" title="Share on Twitter"><img src="http://a.fsdn.com/sd/twitter_icon_large.png"></a>

Read more of this story at Slashdot.



Teach Them How To Hit The Ground Running And Faceplant At The Same Time?

From: Smashing Magazine Feed





 



 


A few days ago, a tutorial on how to Create A Christmas Wish List With PHP was published on Smashing Magazine’s Coding section that frustrated me. It frustrated me as it was incredibly easy to predict the comment reactions it caused. It also frustrated me as it was a classic example of a tutorial resulting in very happy readers who will go out and cause a lot of terrible things on the Web unless they understand that this was meant as a “beginner tutorial”. A lot of the bad feedback was about security — something we shouldn’t take lightly.

It frustrated me mostly because it all happened on Smashing Magazine, a well-respected online publication that is read by many beginners (especially in back-end technologies) and one that is dedicated to quality content with an advisory board (one of which is me) meaning that every article gets reviewed by experts before it is published. This one slipped by in the rush of the holidays, and it was updated a couple of hours after it was published, i.e. the editors added an editor’s note and addressed some important missing points. I am happy that it was published in its original form as it inspired me to point out some things that I see happening in online magazines a lot lately.

The predictable outcome of this kind of tutorial is:

  • Seasoned developers will find issues with the code and claim that it should not be done that way.
  • Other people will disagree and tell the old men to stop telling young kids to get off their lawn.
  • Real beginners will chime in and say that they are very happy about the article and getting the feeling that things are not as complex as they seem to be.
  • A lot of fanboys will mention technology XYZ that makes this much easier.
  • The author will add more disclaimers about the nature of the code within the article with some edits and add warning messages about its viability in the wild — saying that this is just demo code.

Quick Wins Full Of Traps

“Quick tutorials for beginners” are killing our craft. Instead of pointing to existing documentation and keeping it up to date (in the case of the wiki-based docs out there) every new developer turned to an author wanting the fame for themselves. And a lot of online magazines cater to these to achieve “new” content and thus visitors. We measure our success by the number of hits, the traffic, the comments and retweets. And to get all of that, we want to become known as someone who wrote that “very simple article that allowed me to do that complex thing in a matter of minutes”.

Teacher/Learner

Image credit: Opensourceway.

Instead of teaching the underlying technology, we tend to show a quick, beautiful implementation and put a lot of effort into it. We teach a “create something amazing in 5 minutes” and hope people will care enough afterwards and look at learning the underlying technologies. We aim to whet their appetite whilst giving them full solutions. The reason is that this is exactly what we wished we had had when we learned that thing in the first place. Sadly, this is not how teaching and learning works.

Road Safety Begins In A Classroom

At this moment, let me go back in time a bit. Growing up in a small village having a driving license and subsequently a car was a vital part of your social life and also your work options. Therefore, I couldn’t wait to get mine.

Now, what you want to do is to learn driving. You want to get into the car, go vroom-vroom and be off. The reality of getting a driving license though (at least in Germany where there are no speed limits on the motorway and therefore it is taken very seriously) is that you spend quite a lot of evenings in a boring classroom before you get behind the wheel. You learn about the code of the street, the different signs and what to do in all kind of situations in a car. You even learn about the different parts of the car and what they do.

The reason is that it scales better — you need to learn all that stuff and it is much easier to pack 40 students in a room to teach the basics before you try to make up a schedule where all of them can drive out on the road. As a driving school, instead of 40 cars you can get by with 5. And students who already know what they should not do and where things are in a car are less likely to crash them.

Educators Learning From Bad Experiences?

This is frustrating and annoying, the same way learning things at school without being told what they are good for is surely annoying. On the Web, we want to be different. We want to make learning fun and we are tempted to put in as much as possible for beginners so they can get past the basics very quickly and build the awesome of tomorrow instead. The author actually mentions that in the comments:

“I think teaching people to do things is very complicated, doubly so over the internet. If I were teaching a university class I would take a very different approach.”

Yes, teaching is hard. That’s why not every gifted developer is also good at explaining or a good trainer.

While it is a very good idea in our heads to give people quick solutions with real results instead of step-by-step basics, we forget how we actually got there. Once we reached the level in a skill to be educators in it, we went through a lot of trial and error using the skill. By avoiding this, we strip others of the chance to learn a skill on their own terms and with their own obstacles to overcome.

How About Writing Beginner Tutorials Covering Beginner Tasks?

So, I think it is safe to assume that there are two needs/aims battling when we want to write a beginner tutorial, i.e. we want to teach people good practices and we want to get them as far as possible with the least effort. A lot of times these don’t go well together.

jQuery is a poster child of great “new” Web development. “Write less, achieve more” is the mantra and I love that we have it. jQuery achieved this by replacing JavaScript and the unwieldy DOM with a clever and fast API and a totally new syntax: chaining. This is great. This is how to do it. jQuery abstracts the annoyances and complexities out into its core and lets developers write code. You cannot just take this approach and mantra and apply it to any technology without providing a simpler API/platform that abstracts the dangers and annoyances.

Teaching Non-Live Code On The Web?

The discussion that happened in the comments of the aforementioned article was mostly about security and the inability of implementing the code discussed in it in a real environment. And yes, they are very much valid. The code is good as an exercise but awful as a live example. Putting it on an live server means you are open to any kind of attacks and scripts looking for zombies to infect — not to mention how a botnet would have a field day with it!

And the author knows this. This is why a lot of the article is dedicated to explaining that this is not live code:

“Please notice that this article was written for beginners who already grasp HTML and CSS, know a bit of PHP and have seen phpMyAdmin before. I will not go into best practices, safety and all the rest of it; let’s just have fun with this one!”

And later on — as a response to some feedback, even more “don’t do this” was added:

“Note that this is meant as a beginner’s exercise. The code you see here will give you the intended result, but a lot of it is not safe for production websites. It lacks a lot of safeguards, such as data validation, salts for passwords (for better security), htaccess rules and so on. The goal of this article is to let beginners forget about all of these things and just concentrate on building something nice.

Neither does this article promote best practices. You may find yourself adopting different methods later on, or I may write in another article that we shouldn’t do something you see here. The article is intended as a fun little example for beginners to spice up their boring theory sessions. I believe that the best way to learn is through increasingly difficult examples.

That said, I encourage you to try all of this out and play around with it at home or on your servers. If you put this on a live server, I recommend using an account that has only this website on it (or only test websites). I also recommend using passwords for user accounts that are not the same as your other passwords.”

This, actually very much is against the very idea of a beginner tutorial. A beginner tutorial gets people on the way, i.e. it teaches them the first steps and what one can do with it. As these quotes show, teaching people PHP by starting with SQL and writing a login system and file uploader is obviously the wrong way.

Out of a sudden, the simple beginner tutorial is “intended as a fun little example for beginners to spice up their boring theory sessions” (cited). What boring theory sessions? I thought we are building something from scratch here?

Piling On Too Much

The article tries to teach four things at once: SQL with PHP, login and session control, file uploads and how to build a beautiful Web interface powered by PHP. The login system and the file upload is where it gets very dangerous in terms of security. This is not a beginner tutorial — it is giving beginners the wrong impression that everything is easy and everybody else probably just does it wrong and cares far too much about boring details.

We should not teach new developers that they can do things in a few lines of code and keep quiet about the bad effects this has. This is condescending and based on an assumption that people learn only from successes on the Web. The author mentions that in the comments:

“I don’t think beginners need to concern themselves with SQL injection attacks. The point here is to start to learn something, not to learn everything at once. When someone understands SQL at all, then teach them about the problems, not before.”

This is very dangerous thinking — if you teach how to do something, also make people aware of the consequences it has. I totally agree that the point is to learn something. Defining the “something” is the skill of a good tutorial writer or educator. We focus far too much on the final product to be built, rather than the components we use to get there.

This is where using a complex example like a “Christmas Wishlist” that needs a login, uses a database and has an upload feature for any file is a bad choice. There is no way to keep this “simple” unless you teach people how to write code exclusively for their own localhost.

Let’s Not Assume That People Read And Care As Much As We Think They Do

One comment was quite interesting as a summary, as it very much sums up some of the comments and assumes good on the side of the readers:

“Good stuff just to have some fun and help the super beginners get a quick footing. I think a lot of the people commenting here are either A) Too seasoned to look this far back, and not doing things the “proper” way just irks them, or B) I’d be willing to bet some are just flexing their programmer’s ego a bit.

I think assuming that people will take this as serious programming and build from it, building the wrong way, is a bit too much of a stretch. Anyone who can read and who cares about doing things the right way will take the author’s disclaimer to heart. If not, odds are they’re looking for the easy route. If that’s the case, you can’t really stop them. This article isn’t ending the world.”

I agree, it is not. But it also brings nothing new to the table. When I learned PHP coming from Perl in around 2000, I read thickbook.com and — except for the CSS styles — it had similar examples. Over the years we learned to protect our systems more. I think the assumption that readers will care much about the “this is not live code” doesn’t cover one main use case of “beginner tutorials”, i.e. that people will most probably find the article via a Google search and simply use the code example in a live environment without reading the tutorial or the comments. All they wanted was a quick, simple to understand example after all and beginner tutorials have those, right?

In My Humble Opinion

Image credit: Opensourceway.

Want proof of that? Look at the success of W3Schools.com. The Web is full of materials to learn the same things. The quick “here’s the solution — don’t worry about how it works right now” are the most successful ones. We also have a Web full of systems that lack very basic quality and security features and we spend months educating hires in companies what developing production code means when you protect the data of our users.

I think it is time to stop chasing the hollow success of creating a “quick tutorial” that is actually a “bad implementation with quick, sloppy code” in disguise and start curating what is already on the Web. We can then concentrate on the next level tutorials.

I think Web-based education will be a big thing in the near future, and creating a new generation of Web makers should be on all of our agendas. We do this with tools, great documentation and frameworks, and not with a “write this, it is awesome” approach.

(il)


© Christian Heilmann for Smashing Magazine, 2011.



Warner Bros Sued For Pirating Louis Vuitton Trademark

From: Slashdot


NewYorkCountryLawyer writes “You have to love a case where Warner Brothers, copyright maximalist extraordinaire, gets sued for ‘piracy,’ in this case for using a knock-off Louis Vuitton bag in a recent movie. This lawsuit has been described as ‘awkward’ for Warner; I have to agree with that characterization. Louis Vuitton’s 22-page complaint (PDF) alleges that Warner Bros. had knowledge that the bag was a knock-off, but went ahead and used it anyway. Apparently Warner Bros. takes IP rights seriously only when its own IP rights are involved.”

  <a href="http://twitter.com/home?status=Warner+Bros+Sued+For+Pirating+Louis+Vuitton+Trademark%3A+http%3A%2F%2Fbit.ly%2FvpzdZR" title="Share on Twitter"><img src="http://a.fsdn.com/sd/twitter_icon_large.png"></a>

Read more of this story at Slashdot.


Google and Mozilla: Partners, Not Competitors

From: Slashdot

Much has been said about the (perceived) rivalry between Chrome and Firefox, but Google engineer Peter Kasting had enough when he read an article trying to discern Google’s true motives for signing a new Firefox search deal. Kasting posted to Google+ to clarify what value the company sees in funding a “rival” browser. Quoting:
“People never seem to understand why Google builds Chrome no matter how many times I try to pound it into their heads. It’s very simple: the primary goal of Chrome is to make the web advance as much and as quickly as possible. That’s it. It’s completely irrelevant to this goal whether Chrome actually gains tons of users or whether instead the web advances because the other browser vendors step up their game and produce far better browsers. Either way the web gets better. Job done. The end. So it’s very easy to see why Google would be willing to fund Mozilla: Like Google, Mozilla is clearly committed to the betterment of the web, and they’re spending their resources to make a great, open-source web browser. Chrome is not all things to all people; Firefox is an important product because it can be a different product with different design decisions and serve different users well.”

  <a href="http://twitter.com/home?status=Google+and+Mozilla%3A+Partners%2C+Not+Competitors%3A+http%3A%2F%2Fbit.ly%2FsfgG1u" title="Share on Twitter"><img src="http://a.fsdn.com/sd/twitter_icon_large.png"></a>

Read more of this story at Slashdot.



What Do We Do When the Internet Mob Is Wrong?

From: Slashdot

New submitter cornicefire writes “By now most people have heard the news and seen the picture of the boy who was killed over the new Nike sneakers. There are Facebook pages devoted to fist-shaking protests about materialism and greed. Yada yada yada. But while the scuffles over the shoes were real, the death was not. The photo was just a stock photo of some kid in a lab. We know this because of some old school reporters — Steve Earley and Justin Fentin of the Baltimore Sun. In the rush to celebrate crowdsourcing, many of us pooh-pooh the old media as ‘gatekeepers,’ but there are times when keeping that gate locked is a good idea. After all, if one of the crowd discovered the error, the signal would barely rise above the noise. There are people claiming that anyone questioning the facts is being disrespectful. Is there something we can do about the mobocracy? How can we support the best traditions of journalism while fixing the worst? How can we nurture accuracy?”

  <a href="http://twitter.com/home?status=What+Do+We+Do+When+the+Internet+Mob+Is+Wrong%3F%3A+http%3A%2F%2Fbit.ly%2FuZGJJO" title="Share on Twitter"><img src="http://a.fsdn.com/sd/twitter_icon_large.png"></a>

Read more of this story at Slashdot.


Disc brakes: The future for all bikes

From: BikeRadar.com

In June 2010, the UCI announced they would allow disc brakes for cyclo-cross and techno geeks rejoiced. They knew the rule reversal was the first step to seeing the technology trickle to the road, and trickle it will.

We have good information that Shimano’s future update to Dura-Ace will offer a mechanical disc option, and there are believable rumors that SRAM are working on a hydraulic disc system for Red. And of course there are viable stopgaps available now, TRP’s Parabox being the best, followed by a host of mid-grade mechanical options from Avid, Hayes and Shimano.

We’ve put a full season on multiple disc brake equipped cyclo-cross bikes and we’ve come away sold on the concept, and much of the technology currently available.

Putting discs to the test during the 2011 boulder cup, a uci c1 event—if we had only won, we would have beat tim johnson to the punch:

Putting discs to the test during the 2011 Boulder Cup, a UCI C1 event if we’d only won, we’d have beat Tim Johnson to the punch

On the last weekend of our local cyclo-cross season we were presented with a gift: two true mud races. At these events we ran discs alongside both high-performance cantilever and linear-pull brakes. The discs came out on top, offering more control than either of the other two options, not to mention the fact they kept our bike cleaner, longer.

Even wheel changes can be quicker and easier with discs, if you do a little work up front. Syntace offer shims that allow you to set the rotor spacing on all of your wheels to exactly the same position. So if you have to change a wheel in the pit, there are no cables to undo, no arms to open up and no rim dimension variations to account for.

    <p><em>Mud tire testing at </em><em>’Cross of the North (credit: Brian Patrick, <a href="http://www.onsight-media.com/">OnSight Media</a></em>)

These last two races were the icing on the cake for our season on discs. In our opinion, there are only a few small issues holding mass acceptance back: weight and the current lack of a full-hydraulic option. And those downsides aren’t deal breakers by any means.

Tim Johnson’s (Cannondale-Cyclocrossworld.com) Cannondale SuperX still weighs just 16.42lb with Avid BB7s front and rear, and one of BikeRadar’s writers is riding a 2012 Dedacciai Super Cross that weighs 7.7kg (17.0lb) with a relatively conservative, but still elite-level, build that includes SRAM Force, Avid BB7s, Stan’s NoTubes ZTR Race Gold alloy tubeless clinchers, Shimano XTR pedals and all-alloy cockpit components.

Even smaller companies like dedacciai are placing themselves on the cutting edge with disc-only carbon 'cross framesets like the super cross: even smaller companies like dedacciai are placing themselves on the cutting edge with disc-only carbon 'cross framesets like the super cross

Even smaller companies like Dedacciai are placing themselves on the cutting edge with disc-only carbon ‘cross framesets like the Super Cross

It’s not just about better braking…

We’re not the only ones who can see the advantages of disc brakes for drop-bar bikes. Last week, VeloNews tech writer Caley Fretz penned a piece on discs for road in which he highlighted the potential safety benefits they would provide. Fretz’s argument is based upon that fact carbon fiber is far from an ideal braking surface.

In mountainous terrain, carbon clinchers battle tire pressure changes, and the wringer their sidewalls are put through, by the heat that builds under the friction of braking. Carbon tubulars, while safer, still present issues, even when they’re ideally set up. Just about all of the issues surrounding carbon wheels are rooted in the task of braking and thermodynamics, so when you remove the braking duties from the rim, things get a whole lot better, and safer.

Zipp's prototype 303 firecrest tubular wheelset, set for cyclo-cross: zipp's prototype 303 firecrest tubular wheelset, set for cyclo-cross

Discs offer safer braking with carbon wheels

So for that reason alone, discs have clear benefits for road bikes, and still there are a host of other advantages:

  • Better modulation, which is more important in braking performance than power (of course, there’s the possibility of more power too)
  • The ability to build new rim shapes that are more aero, more compliant or stronger, due to the fact that they don’t have to accommodate a brake track
  • Faster wheel changes, especially between wheels equipped with different rim shapes
  • Possibility of less rotational weight, due to the reduced material needs of a brake-track-free rim
  • The ability to further tune chassis components (seatstays, fork) for ride characteristics, rather than reinforce them to accommodate brakes
  • The consistency, durability and adverse condition performance of hydraulics versus mechanical systems
  • Ending premature wear to rims and wheels by moving braking wear to a rotor
  • No need for ultra expensive carbon-rim-specific brake pads
  • And, for advanced users, a new ability to drive their bikes with their brakes

It’s a list that can continually be added to as a rider becomes more and more familiar with riding discs on the road or for ’cross.

Pioneers, take advantage

The momentum is building behind those test mules (both products and riders) for the concept of discs for ’cross and road. Manufacturers are readily building prototypes; we sourced high-end carbon disc wheelsets from both Easton and Zipp.

And one progressive pro has taken to riding them for more than just photo opportunities: Tim Johnson became the first pro cyclo-crosser to win a UCI C1 event with disc brakes at Jingle ’Cross in November, and raced round five of the 2012 World Cup in Namur, Belgium on discs.

Tim johnson won a uci c1 event this season on his cannondale superx disc prototype:

Tim Johnson won a UCI C1 event this season on his Cannondale SuperX disc prototype

He’s the first rider to help prove the brakes, and he’s turning heads. “We decided that we wanted to try it, because I felt like, at certain events, it would make a pretty big difference,” Stu Thorne, Cannondale-cyclocrossworld.com team owner, told BikeRadar. “In LA, Tim won on Saturday and [Ben] Berden came up to me Sunday morning and he wanted to ride the bike around in the parking lot.

“So he was riding TJ’s bike around there, and came back and said, in typical Belgian [fashion], ‘whoaf, this is awesome’. He said that every corner where there was heavy braking, Tim would open up a gap on him, and it made him work just that little bit more.”

Volagi's liscio disc road bike: volagi's liscio disc road bike

Volagi’s Liscio disc road bike

Past that, progressive road brands, like Volagi are putting disc road bikes out, now. Finally, chew on this: every other high-performance wheeled vehicle uses disc brakes, from car, to motorcycle, to racing lawnmower, to mountain bike. Is it time for ’cross and road bikes to step up? We think it is.

Once component manufacturers start to offer integrated hydraulic setups and frame companies start optimizing designs for discs, we’ll be left asking why it took so long. It’s only due to legacy that we’ve all come to accept that squishing a couple of little rubber blocks against a carbon or aluminum rim is something other than ludicrous.