|
Doug Engelbart died today. His work has always been very difficult for writers to interpret and explain. Technology writers, in particular, tend to miss the point miserably, because they see everything as a technology problem. Engelbart devoted his life to a human problem, with technology falling out as part of a solution. When I read tech writers' interviews with Engelbart, I imagine these writers interviewing George Orwell, asking in-depth probing questions about his typewriter. Engelbart's vision, from the beginning, was collaborative.
|
|
|
|
|
Sixty-five years ago... the Manchester Small Scale Experimental Machine — nicknamed “Baby” — became the earliest computer in the world to run a program electronically stored in its memory. This was a flagship moment: the first implementation of the stored program concept that underpins modern computing. An anniversary we missed: early RAM running the first stored "software".
|
|
|
|
|
It's a common need in web apps: you click something and the text of the thing you just clicked changes. Perhaps something simple like a "Show" button that swaps to "Hide", or "Expand Description" to "Collapse Description." This is a fairly simple thing to do, but there are various considerations to make. Let's cover a bunch of ways. What other ways can you swap items using just HTML, CSS and JavaScript?
|
|
|
|
|
I used the following in a lecture called “Why you should never write your own database”. It has never been run, tested, or anything, but it serves as a good way to discuss the challenges involved in building real world databases.... a fully functional, scale out capable, sharding enabled No SQL Key/Value store in less than 60 lines of code. Hipster coding logic: NoSQL is always smaller, because we leave out the SQL.
|
|
|
|
|
Surely that's larger - "SQL" 3 characters, "NoSQL" 5 characters!
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
Alan Kay.
|
|
|
|
|
A few weeks ago I started wondering about 'the test that occasionally and randomly breaks' in a large test suite at my job.... It took me two days of continuous work to find out what was wrong and it explained other occasional problems that had been seen with the code. And it made the test suite 100% stable on all platforms. That 'randomly failing test' was really 'a genuine bug in the code'. But getting to that point was tricky... It's a problem of time... specifically, time.Duration.
|
|
|
|
|
Everyone is aware of JavaScript as it is a powerful client-side scripting language used in many modern websites and Web applications. JavaScript is often difficult to author because of the environment it runs in: the Web browser. Below I have gathered 11 useful and best JavaScript tools to help you simplify you development tasks. Following JavaScript tools will let you speed up your coding process and help you to achieve desired result in certain deadline. Which are your favorite JavaScript libraries?
|
|
|
|
|
Back in 2006, I gave a talk at dConstruct called The Joy Of API. It basically involved me geeking out for 45 minutes about how much fun you could have with APIs. This was the era of the mashup—taking data from different sources and scrunching them together to make something new and interesting. It was a good time to be a geek.... Times have changed. These days, instead of seeing themselves as part of a wider web, online services see themselves as standalone entities. So what happened? AOL, Facebook and the rise of the walled gardens.
|
|
|
|
|
Until the 1970s, Boston was far ahead of Silicon Valley in startup activity and venture capital investments. It had a huge advantage because of its proximity to East Coast industrial centers. By the 1980s, Silicon Valley and Route 128 looked alike: a mix of large and small tech firms, world-class universities, venture capitalists, and military funding. And then Silicon Valley raced ahead and left Route 128 in the dust. The reasons were, at their root, cultural. Is Silicon Valley still a center of innovation, or just where the VC money lives?
|
|
|
|
|
As smartphone hardware improved and applications demanded more performance, the situation was almost the same. Manufacturers couldn’t make CPUs any faster because of heat dissipation issues in that tiny space and power drainage. So rather than put a 2GHz CPU in a phone, makers began using 1.2GHz dual core phones. Then came quad-core CPUs, like Nvidia’s Tegra 3 and a few in Qualcomm’s Snapdragon line. However, the scalability that worked well in the PC (mostly) and better in the server market doesn’t work so great in a smartphone, because the nature of the development environment is completely different animal. For mobile devices, bigger batteries may be more important than more processing power.
|
|
|
|
|
After having a couple days to collect my thoughts regarding last week’s Build 2013 conference I want to share some of my observations. First, I left Build happier with Microsoft than I’ve been for a couple years. Not necessarily due to any single thing or announcement, but rather because of the broader thematic reality that Microsoft really is listening (if perhaps grudgingly in some cases) to their customers. The good, the bad and the whatever of Build 2013.
|
|
|
|
|
Designed to be used in conjunction with the mouse, which Engelbart’s team also invented, the chordal keyboard allows users to type all the letters of the alphabet with just one hand. With both a mouse and a chordal keyboard, a computer user can navigate an information landscape by pointing and clicking and simultaneously entering text commands. In contrast to the mouse, the chordal keyboard never quite caught on with the general public; learning the various key combinations that generate different letters proved too great an obstacle. But that doesn’t bother Engelbart. Rest in Peace Douglas Engelbart, inventor of the computer mouse.
|
|
|
|
|
|
Sadly, he felt ignored by Silicon Valley in latter years: The Shocking Truth About Douglas Engelbart[^]. So take any accolades coming from the industry with a healthy dose of hypocrisy.
edit: Of course, that may not fit with the revisionist history that states that Apple invented everything.
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
Alan Kay.
|
|
|
|
|
B2G stod for Boot to Gecko, a name implying that you would boot into Gecko, the rendering engine of Firefox, and a codename that stuck around for about a year. Apparently it was about building a mobile operating system based on, and targeted at, the Open Web. The wiki page took most of us by surprise, including our Press and Evangelism team, since it got some traction in press before we got briefed about what it actually was. We scurried around and had meetings to come to a conclusion to what it actually was... How can people who have no phones, or old feature phones, get access to a smartphone for a really low cost?
|
|
|
|
|
|
With this new screen you no longer get the BSOD you now get the Fickle Finger of Fate gesture. I like it, a system with an attitude?
|
|
|
|
|
|
It's almost as good as reality!
What?
R-E-A-L-I-T-Y.
Like the guy who spent thousands building a flight sim. Then he went up in a real plane. Found he didn't know how to fly after all. Sold all his gear. Started taking flying lessons.
|
|
|
|
|
I'm consistently shocked that folks forget about Python at Microsoft. I am a C# person, myself, but the Developer Division at Microsoft loves their languages. C++, VB, C#, F#, etc and they aren't messing about when they get serious about a language. One of the least-known and most-kick-butt free products we have is PTVS - Python Tools for Visual Studio. Whether you're just interested in learning Python or you're a hardcore PhD who wants mixed-language Python and C++ debugging or somewhere in between, you gotta check this out. (Seriously, the mixed-mode debugging thing can't be overstressed...) File under: Hidden Gems in VS.
|
|
|
|
|
I love apps, especially productivity apps. If games are all about user input, with minimal app output, and consumption apps about app output, with minimal user input, productivity apps are about both. You put something into an app, and the app returns something back to you, better. Think about Photoshop, or Excel: you put in data, and the data is returned to you, transformed. Same thing with a text-editing app, or a calculator, or a mileage tracker. Productivity apps add value, and the more you use them, the more valuable they become. Unfortunately, productivity apps are a terrible match for app store economics. Apple built the store and sold the devices. Does it need to be running your business, too?
|
|
|
|
|
With... an ever increasing proportion of browsing taking place on smartphones and tablets, websites must decide how they will adapt to people accessing their content without a mouse and keyboard. Whilst the default response to this has often been ‘just make a separate mobile interface!’, a solution that has worked well in the past on smaller mobile devices such as phones, there is very little scope for the middle group occupied by larger phone and tablet displays. This article will take a look at a number of sites that have gone down both unconventional and standard site designs to become more touch-friendly. Let your fingers do the browsing.
|
|
|
|
|
This past week, Microsoft officially unveiled the first preview of Internet Explorer 11 for Windows 8.1[1]. Doing so put to rest a whirlwind of rumors based on leaked versions of the much-maligned web browser. We now know some very important details about Internet Explorer 11, including its support for WebGL, prefetch, prerender, flexbox, mutation observers, and other web standards. Perhaps more interestingly, though, is what is not in Internet Explorer 11. For the first time in a long time, Microsoft has actually removed features from Internet Explorer.
|
|
|
|
|
I just want it to have a menu bar at the top where it belongs.
|
|
|
|
|
Unicode on Python 2 is a fairly simple thing. There are two types of string literals: bytestrings (look like this on 2.x: 'foo') and unicode strings (which have a leading u prefix like this: u'foo'). Since 2.6 you can also be explicit about bytestrings and write them with a leading b prefix like this: b'foo'. Python 2's biggest problem with unicode was that some APIs did not support it.... On Python 3 two things happened that make unicode a whole lot more complicated. The biggest one is that the bytestring was removed. It was replaced with an object called bytes which is created by the Python 3 bytes syntax: b'foo'. It might look like a string at first, but it's not. Unfortunately it does not share much of the API with strings. A u'foo' by any other name would not be readable.
|
|
|
|