Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!



Programmer Debunks Source Code Shown In Movies and TV Shows

JohnGrahamCumming Debunk? (301 comments)

Hmm. I am the person who created that Tumblr. I'm not trying to "debunk" anything. Just showing what it really is: sometimes it's nonsense, sometimes it's there's an amusing juxtaposition, sometimes it's a fun Easter Egg.

about 8 months ago

Building Babbage's Analytical Engine

JohnGrahamCumming Re:Already underway (56 comments)

Tim Robinson, the man behind the Meccano construction you link to, is a trustee of the Plan 28 charity mentioned above.

about 2 years ago

Building Babbage's Analytical Engine

JohnGrahamCumming Re:It's not hard to do, just moderately expensive (56 comments)

You are quite correct that we have not built a single demo part. In the two years since I started talking about this project the following has happened:

1. Persuaded the Science Museum to digitize all of Babbage's plans and notebooks (this in itself was a non-trivial task involving a great deal of effort at all levels and they should be thanked for taking on the task).
2. Got the leading Babbage experts to join and work with me (Doron Swade who built the Difference Engine No. 2 and Tim Robinson)
3. Started a UK-based charity (again these things take time as there are legal requirements and the recruitment of a board of trustees)
4. Started research on the Babbage archive itself
5. Begun fund-raising.

No. 4 is non-trivial because there are literally thousands of pages of notes and > 230 large scale plans to decipher. Plus there's a hardware description language to work with. And the archive is not well documented. There are a number of different cross references that conflict with each other. I realize that all this stuff is boring and people would like to see an immediate result, but that's not going to happen. It's years of work to properly study this stuff and build a historically accurate machine.

Note that we have not proposed building the 1,000 memory location machine. That's far too much to demonstrate that it would work and would add to the cost and size. As for the number of parts, until we've deciphered all the plans and come up with a definitive plan that it's hard to answer but we believe there will be roughly 40,000 to 50,000 components to be made.

about 2 years ago

The Greatest Machine Never Built

JohnGrahamCumming Re:Great idea, probably not happening (132 comments)

You are correct that I care about the PR side of things. I need to because I need to raise a substantial amount of money.

But it's far from all PR. There's now a registered British charity with a board of trustees and the pre-eminent Babbage expert, Doron Swade, who built the Difference Engine No. 2 at the Science Museum is running the technical side of the project.

Study of the digitized plans has been underway since February and some first results will be announced this summer. We actively want to build a 3D working model in a tool like Autodesk.

more than 2 years ago

Cryptographically Hiding TCP Ports

JohnGrahamCumming Re:Hm (206 comments)

Sounds just like tumbler.

more than 6 years ago



Detecting copy/paste and clone stamp image forgery

JohnGrahamCumming JohnGrahamCumming writes  |  more than 6 years ago

JohnGrahamCumming writes "Photoshop's clone tool provides a powerful way of covering up areas of an image. Uncovering those touched up areas can be done automatically using a recently published algorithm. This blog post describes the algorithm, with examples, and provides GPL licensed source code to image forgery detection."
Link to Original Source

Cryptographically hiding TCP ports

JohnGrahamCumming JohnGrahamCumming writes  |  more than 6 years ago

JohnGrahamCumming writes "The shimmer project implements a cryptographically-based system for hiding important (e.g. SSH) open ports in plain sight. By automatically forwarding from a range of ports all but one of which are honeypots and by changing the ports every minute only a user knowing a shared secret can determine the location of the real SSH server."
Link to Original Source

'Wildfire' brings social news to Facebook

JohnGrahamCumming JohnGrahamCumming writes  |  about 7 years ago

JohnGrahamCumming writes "My newly released Wildfire application brings social news to Facebook by exploiting Facebook's social graph. Instead of "digging" stories, or "voting up/down", stories gain credibility only if you deem them worthy of being passed onto your friends. Wildfire offers users three views of the news: the news you and your friends deem interesting, the news that the great unwashed deem interesting and a random view. Randomness means that the Wisdom of Crowds is harnessed without succumbing to mob rule. And RSS integration means you can automatically bring your feeds to Facebook and pass on a subset of the stories. Personally, I started with the Slashdot feed."

JohnGrahamCumming JohnGrahamCumming writes  |  more than 7 years ago

JohnGrahamCumming writes "If you've got a snippet of source code, a neat algorithm, a cool mashup, or just an explanation of some awful Windows API you can share it with UseTheSource a new web site I've put together. Using the same 'voting' style as popular social news sites, and divided by language, you can vote on the best snippets of the day. And the entire source of the site is open too."

JohnGrahamCumming JohnGrahamCumming writes  |  more than 7 years ago

JohnGrahamCumming writes "SPF, Sender-ID and DomainKeys all require that email messages be received before their validity can be checked, but SMTP servers are overloaded with SPF-compliant and DomainKeys-signed spam. Trusted Email Connection Signing is an approach that allows an SMTP server to decide before any email is delivered whether a connection is trustworthy or not saving bandwidth and CPU on overloaded mail servers."

JohnGrahamCumming JohnGrahamCumming writes  |  more than 7 years ago

JohnGrahamCumming writes "In this article I argue that you shouldn't be using a debugger. Instead you should be using your brain, printf and unit testing. After decades of improvement in programming languages, debuggers still suck. And they are not going to improve because the entire idea of breakpoints, single stepping and watching variables is the wrong way to debug."

JohnGrahamCumming JohnGrahamCumming writes  |  more than 7 years ago

JohnGrahamCumming writes "If the web page you want is overloaded because its Slashdotted, or it's just NSFW but you don't want to forget about it, the free service l8tr will send you an email reminder when the web page becomes available. Now if the site is Slashdotted, of course, it can't remind you of its own existence!"

JohnGrahamCumming JohnGrahamCumming writes  |  about 8 years ago

JohnGrahamCumming writes "Last Monday my blog post on subliminal spam messages was posted on Slashdot's front page. In the days that followed three anti-spam firms reported the discovery of subliminal spam as their own work with no mention of my blog or Slashdot. One even appears to have lifted the examples straight from my blog without attribution. Is this how research is done, or was it just three coincidences?"



JohnGrahamCumming JohnGrahamCumming writes  |  about 11 years ago I discovered from web logs on my server that a lot of people are clicking through from my name to my web site.

No doubt they are looking for information on who I am. Here's a quick summary:

I am...

So now you know.

Sign up for my new Spam and Anti-spam Newsletter, if you are interested.

Slashdot Login

Need an Account?

Forgot your password?

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>