This is Jeffrey Davis's TypePad Profile.
Join TypePad and start following Jeffrey Davis's activity
Jeffrey Davis
Recent Activity
I think you hinted at the reality: Most our code these days is written in jQuer...JavaScript anyway. The server-side code is just an API wrapper for your interface to talk to.
Hence, why we have all this debate. Sure, that API language matters, but it's for things like: "How fast can the server respond?" "How easy is it to learn?" "What is the community like?" "How good are the standard and open source libraries?"
Note that the actual features of the language are not really important anymore. They all get the job done. At least with anything modern enough to have all the basics you need.
Why Ruby?
I've been a Microsoft developer for decades now. I weaned myself on various flavors of home computer Microsoft Basic, and I got my first paid programming gigs in Microsoft FoxPro, Microsoft Access, and Microsoft Visual Basic. I have seen the future of programming, my friends, and it is terrible...
These are the things I love about Scribe. Definitely bookmarking this post should the discussion come up in the future.
On Integration
On numerous occasions I've had the question posed to me whether it is necessary to use a tool such as Scribe for building integrations vs. using CRM web services (or using eConnect for integrating to GP as opposed to Scribe and so on and so forth). I think the question itself indicates that ther...
Like most things, the problem isn't the technology. It's the people. You would have to get all the people on the internet to agree on it. It's a lot more challenging than just having something that works well. It's gotta be fun, useful, trendy and all that jazz.
The Future of Markdown
Markdown is a simple little humane markup language based on time-tested plain text conventions from the last 40 years of computing. Meaning, if you enter this… …you get this! Lightweight Markup Languages ============================ According to **Wikipedia**: > A [lightweight markup lan...
Lists are awesome. But you have to organize them better than just the one gigantic list. Once you organize them, the list is freedom. You SAVE a TON of time not having to remember the same thing over and over again or figure out what you are working on.
I don't know, but I have too much going on to keep it all straight.
Todon't
What do you need to do today? Other than read this blog entry, I mean. Have you ever noticed that a huge percentage of Lifehacker-like productivity porn site content is a breathless description of the details of Yet Another To-Do Application? There are dozens upon dozens of the things to choo...
My bank always does security authentication things through snail mail. I always wondered if that really helped the situation, or if it's just that the crackers don't have the patience to wait that long, so they get bored and move on.
Computer Crime, Then and Now
I've already documented my brief, youthful dalliance with the illegal side of computing as it existed in the late 1980s. But was it crime? Was I truly a criminal? I don't think so. To be perfectly blunt, I wasn't talented enough to be any kind of threat. I'm still not. There are two classic b...
The beast feature of php is the manual and the community. It's awesome being able to find solutions very easily.
Trying to figure out how something works in MSDN for .Net is like sticking nails through your eyes. It's like it was written by lawyers and marketers exclusively—just jargon and shameless promotion, but not much real information.
Of course, the difficulty in reliably searching for .net or c# is part of that.
The PHP manual with the user-notes is a dream come true. What can take a full day to research in the MSDN manual takes seconds on php.net.
THIS is what you have to duplicate to replace php. Make it easy to understand, RAPIDLY. You need a good manual, with user notes, that gets updated and a community of passionate people who like discussing trivial matters.
The language itself is secondary or even tertiary to it's success. That doesn't mean you can't make it awesome, but an awesome language is not enough nor is it a necessary prerequisite.
The PHP Singularity
Look at this incredible thing Ian Baker created. Look at it! What you're seeing is not Photoshopped. This is an actual photo of a real world, honest to God double-clawed hammer. Such a thing exists. Isn't that amazing? And also, perhaps, a little disturbing? That wondrous hammer is a de...
We're talking about a low quality item, with (relatively) high quality encodings. It's like comparing the conductivity of silver, copper and gold for transmitting electricity for your cheap radioshack light dimmer. Sure they make a difference, but can you really tell when it's just light?
Most can't, some experts probably can. A lot more would notice the difference if you were transmitting a tremendous amount of electricity over a long distance to run a huge spotlight, power a car, or (ironically) to run audio equipment. The variances would be noticeable, the light would be brighter on higher quality, the car would be faster.
But here, there is nothing that needs perfect tone quality: Good test items would be a perfectly balanced choir, or a full orchestra with various solos jumping out throughout the song.
But yeah, if you're just running a light in your house, cheap wires work fine. Give us something that has quality and we might be able to tell you if it degrades.
If what you are listening to is garbage to begin with, poor encoding it isn't going to hurt it much.
Concluding the Great MP3 Bitrate Experiment
And now for the dramatic conclusion to The Great MP3 Bitrate Experiment you've all been waiting for! The actual bitrates of each audio sample are revealed below, along with how many times each was clicked per the goo.gl URL shortener stats between Thursday, June 21st and Tuesday, June 26th. ...
The "toasty crunchies" example is pretty entertaining. However, the one thing not mentioned is the tax on your time.
Going through that whole script (including the temper tantrum) is about 20 minutes of your time that most of us don't have.
Saying, "we don't have that" and pouring food from the correct box instead: 30 seconds.
My child generally is content when they see tasty food. Sometimes actions really do speak louder than words.
How to Talk to Human Beings
I hesitate to say everyone should have a child, because becoming a parent is an intensely personal choice. I try my best to avoid evangelizing the experience, but the deeper in I get, the more I believe that nothing captures the continued absurdity of the human condition better than having a ch...
As a parent myself with similar proclivities, let me voice my agreement here on a few points made in the article and in the comments:
1. Parenting is hard. (But fun and rewarding).
2. Different children are as different as different adults. No. Really. They aren't just automatons. They actually make their own decisions and decide how they are going to react to different situations.
3. #2 doesn't mean you are helpless as a parent. On the contrary, the better you understand this, the better job you can do.
#2 and #3 are not mutually exclusive. Children are genetically very different AND you can still make a huge difference based upon how you raised them.
Silly humans, always trying to pick one extreme or the other. :)
How to Talk to Human Beings
I hesitate to say everyone should have a child, because becoming a parent is an intensely personal choice. I try my best to avoid evangelizing the experience, but the deeper in I get, the more I believe that nothing captures the continued absurdity of the human condition better than having a ch...
You don't have to lie to have discretion in what you decide to say. Always tell the truth.
Saying every thought that enters your mind is a totally different subject. My 3 year old does that, and believe me, she (and all of us) will be better off when her "filter" activates. It's entertaining, but not productive.
Trust Me, I'm Lying
We reflexively instruct our children to always tell the truth. It's even encoded into Boy Scout Law. It's what adults do, isn't it? But do we? Isn't telling the truth too much and too often a bad life strategy – perhaps even dangerous? Is telling children to always tell the truth even itself th...
Thanks for the notification and explanation. Now using 2-step verifcation.
Make Your Email Hacker Proof
It's only a matter of time until your email gets hacked. Don't believe me? Just read this harrowing cautionary tale. When [my wife] came back to her desk, half an hour later, she couldn’t log into Gmail at all. By that time, I was up and looking at e‑mail, and we both quickly saw what the re...
Best quote from someone in the trenches:
And most of the time, what inexperienced developers consider beautiful is superficial, and what they consider ugly, is battle-hardened production-ready code from master hackers.
Learn to Read the Source, Luke
In the calculus of communication, writing coherent paragraphs that your fellow human beings can comprehend and understand is far more difficult than tapping out a few lines of software code that the interpreter or compiler won't barf on. That's why, when it comes to code, all the documentatio...
I think the problem lies more in the current standard than in the format itself. As soon as you can make a fully functional webpage within a single-file "book," then the eBook will be vastly superior.
Right now it's just a young technology. Give it time.
Books: Bits vs. Atoms
I adore words, but let's face it: books suck. More specifically, so many beautiful ideas have been helplessly trapped in physical made-of-atoms books for the last few centuries. How do books suck? Let me count the ways: They are heavy. They take up too much space. They have to be printed. ...
We're doing something wrong. The fact there is this battle between better encryption and better cracking is just a never-ending arms race.
I am not sure the solution, but I think it is something along the lines of making the user database useless outside of the realm it is being used. Maybe have the entire database hashed against the administrator log-in and that information is never written to disk, just cached in RAM?
Tying it to the hardware somehow? I don't know what it is but surely there is a better solution.
Speed Hashing
Hashes are a bit like fingerprints for data. A given hash uniquely represents a file, or any arbitrary collection of data. At least in theory. This is a 128-bit MD5 hash you're looking at above, so it can represent at most 2128 unique items, or 340 trillion trillion trillion. In reality the...
The problem is that most of your projects are going to be an original creation, so that no simulator for it will exist. The only way to get one would be to make it... except that would take exponentially longer than just dealing with the problem. It only becomes feasible if you are going to repeat a very similar simulation many times.
Visualizing Code to Fail Faster
In What You Can't See You Can't Get I mentioned in passing how frustrated I was that the state of the art in code editors and IDE has advanced so little since 2003. A number of commenters pointed out the amazing Bret Victor talk Inventing on Principle. I hadn't seen this, but thanks for mention...
Too bad none of these things actually work yet in a real IDE!
What You Can't See You Can't Get
I suppose What You See Is What You Get has its place, but as an OCD addled programmer, I have a problem with WYSIWYG as a one size fits all solution. Whether it's invisible white space, or invisible formatting tags, it's been my experience that forcing people to work with invisible things they ...
To flip the coin over, I am so glad the tablet era has arrived. So much easier for lots of simple things. Email, movies, books, news and most of my little games—on the tablet.
Still. I think it's too soon to declare the desktop dead. Maybe dead for being exciting and new, but still very useful and very relevant for most of the work being done in industry.
That said, the pc can be killed by a few feature additions:
- Really fast and complete tablet docking stations
- Really effective voice to text
- Better gestures to do more complicated work
All these exist, but they are not of high enough quality yet. Make high quality version of all three and suddenly the pc is unnecessary.
Welcome to the Post PC Era
What was Microsoft's original mission? In 1975, Gates and Allen form a partnership called Microsoft. Like most startups, Microsoft begins small, but has a huge vision – a computer on every desktop and in every home. The existential crisis facing Microsoft is that they achieved their missi...
It would only be post-pc if we could sell all our computers and still get our jobs done. Not even close. I still need three monitors (and a few more would be better) as well as a large keyboard and a mouse.
Granted, I am a developer, so I need more specialized hardware, but even our secretaries would struggle terribly trying to look up phone numbers and addresses on a relative clunker like the ipad3.
At home, I have the same problem. I can't do anything useful without an actual computer. I have a tablet, and I love it, but I still need the PC. Until tablets get more useful so that you can actually do real work with them, we are still going to need to the pc.
I don't know that you will ever be able to do real work with such a small screen.
Welcome to the Post PC Era
What was Microsoft's original mission? In 1975, Gates and Allen form a partnership called Microsoft. Like most startups, Microsoft begins small, but has a huge vision – a computer on every desktop and in every home. The existential crisis facing Microsoft is that they achieved their missi...
A live troubleshooting of a real world problem can work very well also. Hard to set up if your in a big business, but in smaller organizations it's a very good test.
How to Hire a Programmer
There's no magic bullet for hiring programmers. But I can share advice on a few techniques that I've seen work, that I've written about here and personally tried out over the years. 1. First, pass a few simple "Hello World" online tests. I know it sounds crazy, but some people who call themse...
I have to agree with what a few people have already said. The personal ban has always been the most effective method. This was a wonderful feature on Kali. Simply /ban annoyinguser and suddenly you don't hear from them any more.
Really annoying users would be instantly banned by about 50% of the population. The rest could decide if they wanted to keep seeing those posts or not.
Suspension, Ban or Hellban?
For almost eight months after launching Stack Overflow to the public, we had no concept of banning or blocking users. Like any new frontier town in the wilderness of the internet, I suppose it was inevitable that we'd be obliged to build a jail at some point. But first we had to come up with so...
By the way, Jeff, your copyright needs updated.
It's not 2009 anymore. :)
The Infinite Version
One of the things I like most about Google's Chrome web browser is how often it is updated. But now that Chrome has rocketed through eleven versions in two and a half years, the thrill of seeing that version number increment has largely worn off. It seems they've picked off all the low hanging ...
I love that we are arguing about the etymology of zucchini on a programming site.
The Infinite Version
One of the things I like most about Google's Chrome web browser is how often it is updated. But now that Chrome has rocketed through eleven versions in two and a half years, the thrill of seeing that version number increment has largely worn off. It seems they've picked off all the low hanging ...
@Gustavo
I believe Jeff is referring to a future bubble, to appear in about a year.
Lived Fast, Died Young, Left a Tired Corpse
It's easy to forget just how crazy things got during the Web 1.0 bubble in 2000. That was over ten years ago. For context, Mark Zuckerberg was all of sixteen when the original web bubble popped. There's plenty of evidence that we're entering another tech bubble. It's just less visible to pe...
@Steve Hollasch.
Well said. Use what works best.
24 Gigabytes of Memory Ought to be Enough for Anybody
Are you familiar with this quote? 640K [of computer memory] ought to be enough for anybody. — Bill Gates It's amusing, but Bill Gates never actually said that: I've said some stupid things and some wrong things, but not that. No one involved in computers would ever say that a certain amou...
If I comment on this post, will you steal my password? :O
The Dirty Truth About Web Passwords
This weekend, the Gawker network was compromised. This weekend we discovered that Gawker Media's servers were compromised, resulting in a security breach at Lifehacker, Gizmodo, Gawker, Jezebel, io9, Jalopnik, Kotaku, Deadspin, and Fleshbot. If you're a commenter on any of our sites, you prob...
More...
Subscribe to Jeffrey Davis’s Recent Activity
