Skip navigation

actual product

warning: Creating default object from empty value in /var/www/vhosts/ on line 33.

iONiUM writes "From the article: 'Many are only just getting their heads around the idea of 3D printing but scientists at MIT are already working on an upgrade: 4D printing. At the TED conference in Los Angeles, architect and computer scientist Skylar Tibbits showed how the process allows objects to self-assemble.' There could be many applications for this. Definitely a cool step forward." Pictures and video of the process.

Share on Google+

Read more of this story at Slashdot.

Your rating: None

google redesign feature lead

By Dieter Bohn and Ellis Hamburger

Something strange and remarkable started happening at Google immediately after Larry Page took full control as CEO in 2011: it started designing good-looking apps.

Great design is not something anybody has traditionally expected from Google. Infamously, the company used to focus on A/B testing tiny, incremental changes like 41 different shades of blue for links instead of trusting its designers to create and execute on an overall vision. The “design philosophy that lives or dies strictly by the sword of data” led its very first visual designer, Douglas Bowman, to leave in 2009.

More recently, however, it’s been impossible to ignore a series of thoughtfully designed apps — especially on iOS,...

Continue reading…

Your rating: None

IBM's integrated silicon nanophotonics transceiver on a chip; optical waveguides are highlighted here in blue, and the copper conductors of the electronic components in yellow.

IBM Research

IBM has developed a technology that integrates optical communications and electronics in silicon, allowing optical interconnects to be integrated directly with integrated circuits in a chip. That technology, called silicon nanophotonics, is now moving out of the labs and is ready to become a product. It could potentially revolutionize how processors, memory, and storage in supercomputers and data centers interconnect.

Silicon nanophotonics were first demonstrated by IBM in 2010 as part of IBM Research's efforts to build Blue Waters, the NCSA supercomputer project that the company withdrew from in 2011. But IBM Research continued to develop the technology, and today announced that it was ready for mass production. For the first time, the technology "has been verified and manufactured in a 90-nanometer CMOS commercial foundry," Dr. Solomon Assefa, Nanophotonics Scientist for IBM Research, told Ars.

A single CMOS-based nanophotonic transceiver is capable of converting data between electric and optical with virtually no latency, handling a data connection of more than 25 gigabits per second. Depending on the application, hundreds of transceivers could be integrated into a single CMOS chip, pushing terabits of data over fiber-optic connections between processors, memory, and storage systems optically over distances ranging from two centimeters to two kilometers.

Read 5 remaining paragraphs | Comments

Your rating: None

Fish image via Ivelin Radkov

The story of Zite has been a whirlwind. We launched on March 9, 2011, and closed our acquisition by CNN on Aug. 30 of the same year — just under six months later.

But acquisition was not our original plan. We never built the company with the intention of getting acquired. When we launched Zite, we were thrilled to get such a great reception from the press and hundreds of thousands of new users. Our goal was to use that influx of users to secure series A funding to build a team and compete effectively in a crowded market. But fate intervened, and we got an attractive acquisition offer from CNN, a company that believed in our vision. In hindsight, I can see that there were a few really smart things that we did that made us an excellent acquisition target.

My goal for this article isn’t to give you a silver bullet for getting your company acquired, but rather to offer some insight into what I think are the key reasons that Zite was able to move from launch to transaction in such a compressed timeline.

  • Have a huge product launch — It doesn’t matter how good your product is if people don’t know about it. Once we believed we had the right product, we marketed it very hard. We spent much more money on PR surrounding our launch than was fiscally prudent at the time (we were risking future payroll) because we realized that we had one chance to tell the world that Zite was awesome. This paid off in spades: On launch day, we had print articles in The Wall Street Journal and USA Today, plus dozens of other fantastic pieces. This yielded us top billing in the App Store for free applications, and 125,000 downloads in the first week.
  • Put your best foot forward — We focused much of our product design on the first minutes of the user experience. We knew that if a user never saw our amazing personalization technology, we’d lose them, and they’d think we were just a “me-too” news reader. We put our technology front and center by designing a simple, intuitive set-up experience that yielded immediate delight and serendipity.
  • Have technology that is incredibly difficult to replicate — You’re not going to get bought if the acquiring company thinks they can build the product themselves. Zite had the advantage of almost six years of R&D (we were formerly called Worio), but until we became Zite, we were a technology company with a product problem. Instead of continuing to use the technology on a failed product, we pivoted to Zite. We also seized the opportunity to launch on the iPad, which is the perfect delivery device for the technology.
  • Have a clear vision — We had a vision to change the way people consume information. Zite (the product) and personalization are components of that vision, but we proved that we were not a one-trick pony, and we were excited about innovating on news delivery.
  • Disrupt the market — CNN noticed Zite after we received a cease-and-desist from major media companies, including Time Inc. (which is a cousin of CNN, since both are owned by Time Warner). My boss jokes, “If all of the media companies were able to get their lawyers to send you a letter, then you must be doing something right.” At the time, we weren’t sure how we would work with publishers, and publishers weren’t sure of the value of Zite. We’re now on solid ground with publishers, since they have realized the value of Zite as a discovery engine — but at the time it was a great boost to our visibility among the exact same executives who would later give us an offer for the company.

I want to stress that none of the above points are a guarantee that your company will get acquired — let alone be successful — but they certainly influenced CNN’s decision to buy Zite and, ultimately, our success to date. Look for ways you can integrate these tips into your start-up, and even if you aren’t acquired quickly, you will certainly build a better long-term offering for whatever market you choose to address.

Mark Johnson is CEO of Zite. He was an adviser to the company for almost two years, prior to taking the CEO role. He brings a strong product and technology background, with experience at several successful search start-ups: Powerset (natural-language search, acquired by Microsoft), Kosmix (categorized search, acquired by Walmart), and SideStep (travel search, acquired by Kayak). Most recently, he led product at Bing in San Francisco.

Your rating: None

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 themselves programmers can barely program. To this day, I still get regular pings from people who tell me they had candidates fail the most basic programming test imaginable.

That's why extremely simple programming tests are step one of any sane interview process. These tests should happen online, and the goal is not to prove that the candidate is some kind of coding genius, but that they know what the heck programming is. Yes, it's sad and kind of depressing that this is even necessary, but if you don't perform this sanity check, trust me – you'll be sorry.

Some services that do online code screening (I am sure there are more, but these are the ones I know about) are Interview Zen and codility.

2. Ask to see their portfolio.

Any programmer worth their salt should have a portfolio of the things they've worked on. It doesn't have to be fancy. I'm just looking for a basic breadcrumb trail of your awesomeness that you've left on the Internet to help others. Show me a Stack Overflow profile where I can see what kind of communicator and problem solver you are. Link me to an open-source code repository of your stuff. Got a professional blog? A tumblr? A twitter? Some other word I've never heard of? Excellent, let's have a look. Share applications you've designed, or websites you worked on, and describe what parts were yours.

Just seeing what kind of work people have done, and what sort of online artifacts they've created, is tremendously helpful in getting a sense of what people do and what they're good (or bad) at.

3. Hire for cultural fit.

Like GitHub, I find that cultural fit is often a stronger predictor of success than mad programming chops.

We talk about [philosophy] during the hiring process, which we take very seriously. We want any potential GitHubber to know what they’re getting into and ensure it’s a good fit. Part of that is having dinner and talking about stuff like the culture, philosophy, mistakes we’ve made, plans, whatever.

Early on we made a few hires for their skills with little regard to how they’d fit into the culture of the company or if they understood the philosophy. Naturally, those hires didn’t work out. So while we care about the skills of a potential employees, whether or not they “get” us is a major part too.

I realize that not every business has a community around what they do, but if you do have a community you should try like hell to hire from your community whenever possible. These are the folks who were naturally drawn to what you do, that were pulled into the gravitational well of your company completely of their own accord. The odds of these candidates being a good cultural fit are abnormally high. That's what you want!

Did a few of your users build an amazing mod for your game? Did they find an obscure security vulnerability and try to tell you about it? Hire these people immediately!

4. Do a detailed, structured phone screen.

Once you've worked through the above, it's time to give the candidate a call. Bear in mind that the phone screen is not for chatting, it's for screening. The call should be technical and structured, so both of you can get out immediately if it clearly isn't a fit. Getting the Interview Phone Screen Right covers the basics, but in summary:

  1. A bit of on-the-fly coding. "Find the largest int value in an int array."
  2. Some basic design. "Design a representation to model HTML."
  3. Scripting and regular expressions. "Give me a list of the text files in this directory that contain phone numbers in a specific format."
  4. Data structures. "When would you use a hashtable versus an array?"
  5. Bits and bytes. "Why do programmers think asking if Oct 31 and Dec 25 are the same day is funny?"

What you're looking for is not magical perfect answers, necessarily, but some context into how this person solves problems, and whether they know their stuff (plus or minus 10 percent). The goal is to make sure that the candidates that do make it to the next step are not wasting their time or yours. So don't be shy about sticking to your guns and ending the call early if there are too many warning flags.

5. Give them an audition project.

So the candidate breezed through the hello world programming tests, has an amazing portfolio, is an excellent cultural fit, and also passed the phone screen with flying colors. Time to get them in for a face-to-face interview, right? Not so fast there cowboy!

I've seen candidates nail all of the above, join the company, and utterly fail to Get Things Done. Have I mentioned that hiring programmers is hard?

If you want to determine beyond the shadow of a doubt if someone's going to be a great hire, give them an audition project. I'm not talking about a generic, abstract programming problem, I'm talking about a real world, honest-to-God unit of work that you need done right now today on your actual product. Something you would give to a current employee, if they weren't all busy, y'know, doing other stuff.

This should be a regular consulting gig with an hourly rate, and a clearly defined project mission statement. Select a small project that can ideally be done in a few days, maybe at most a week or two. Either the candidate can come in to the office, or they can work remotely. I know not every business has these bite-sized units of work that they can slice off for someone outside the company – but trying desperately to make it inside the company – to take on. I'd argue that if you can't think of any way to make an audition mini-project work for a strong hiring candidate, perhaps you're not structuring the work properly for your existing employees, either.

If the audition project is a success, fantastic – you now have a highly qualified candidate that can provably Get Things Done, and you've accomplished something that needed doing. To date, I have never seen a candidate who passes the audition project fail to work out. I weigh performance on the audition project heavily; it's as close as you can get to actually working the job without being hired. And if the audition project doesn't work out, well, consider the cost of this little consulting gig a cheap exit fee compared to an extensive interview process with 4 or 5 other people at your company. Worst case, you can pass off the audition project to the next strong candidate.

(A probationary period of conditional employment can also work, and is conceptually quite similar. You could hire with a 6-8 week review "go or no go" decision everyone agrees to in advance.)

6. Get in a room with us and pitch.

Finally, you should meet candidates face-to-face at some point. It's inevitable, but the point of the earlier steps is that you should be 95% certain that a candidate would be a great hire before they ever set foot in an interview room.

I'm far from an expert on in person interviews, but I don't like interview puzzle questions, to put it mildly.

Instead, I have my own theory about how we should interview programmers: have the candidate give a 15 minute presentation on their area of expertise. I think this is a far better indicator of success than a traditional interview, because you'll quickly ascertain …

  • Is this person passionate about what they are doing?
  • Can they communicate effectively to a small group?
  • Do they have a good handle on their area of expertise?
  • Would your team enjoy working with this person?

The one thing every programmer should know, per Steve Yegge, is how to market yourself, your code, and your project. I wholeheartedly agree. Now pitch me!

7. None of this is guaranteed.

Please take this list at face value. I've seen these techniques work, and I've occasionally seen them not work. Adapt this advice to your your particular situation, keep what you think makes sense, and ignore the rest (although I'd strongly advise you to never, ever skip step #1). Even in the best of circumstances, hiring human beings is hard. A job opportunity may not work out for reasons far beyond anyone's control. People are, as they say, complicated.

If you think of work as a relationship, one you'll spend 40 hours a week (or more) in the rest of your life, it behooves everyone involved to "date smart". Both the company and the candidate should make a good faith best effort to determine if there's a match. Your goal shouldn't be merely to get a job, or hire someone for a job, but to have fun and create a love connection. Don't rush into anything unless it feels right on both sides.

(as an aside, if you're looking for ways to attract programmers, you can't go wrong with this excellent advice from Samuel Mullen.)

[advertisement] What's your next career move? Stack Overflow Careers has the best job listings from great companies, whether you're looking for opportunities at a startup or Fortune 500. You can search our job listings or create a profile and let employers find you.

Your rating: None