Quantcast
Channel: Co.Labs
Viewing all 36575 articles
Browse latest View live

What's The Real Value Of Learning More Than One Programming Language?

0
0

Let's say you're new to programming, or maybe you've honed your skills at one language. What languages should you learn? And is it even worth the time and effort to become a multilingual coder?

Well, you probably know that learning multiple languages is part of the traditional university track--programmers with degrees in computer science will usually have trained in half a dozen languages by graduation. But what's the value of being a multilingual coder in the workplace, where your projects are less theoretical?

"Not only are languages different tools for different jobs, but they are technologies that shape how you think about programming," says Richard Pattis, a senior lecturer of Informatics at UC Irvine who invented the Karel educational programming language in 1981. But this isn't an outright endorsement of learning two-plus languages--it matters which ones you pick. "Learning similar languages might not progress your thinking much," says Pattis.

To expand their minds, Pattis recommends that versatile programmers learn languages from different language paradigms, whether it be object-oriented languages (e.g., C++/Java), functional languages (e.g., ML and Haskell), scripting languages (e.g., Lisp and Python), logic-based languages (e.g., Prolog), or low-level languages (like C, the Java Virtual Machine or a machine language).

The point is not necessarily fluency, but gaining a conceptual vocabulary to attack problems in new ways. Good programmers don't just learn how to code--learning core concepts teaches them how to wrap their brain around a problem and produce efficient code to solve it.

Fluency Is Good, But Smart Thinking Is Better

If a programmer's fluency matches the language used in the project they're interviewing for, obviously that helps--but that's less important than a programmer's problem-solving/architecting skills. All top-tier industry employers think that way, says Google software engineer Edward Lin.

"I think that puts the cart before the horse. The question shouldn't be 'What language should I pick up'--instead, it should be 'what type of developer do I want to become,'" Lin says. "Some development positions require you to know more languages, but most will require just one. You can become highly sought after with just knowing one language."

Some positions don't need multilingual expertise, like an operating systems developer. But by the same token, an interviewer won't presume that a multilingual programmer isn't qualified for a position that only really "needs" one language. Proficiency is in the task accomplished, not in the quantity of languages known.

But Lin does have a suggested order of languages for newbies to learn: first Python, because it's the most readable and syntactically tight, and then C, the long-winded general-purpose coding language that is still highly sought after, after 40 years in the industry.

In his now-classic "How to Become A Hacker" open source champion and Jargon File editor Eric Steven Raymond echoed the sentiment to learn Python first. Later, he advises learning C as it's the basis of Unix--but also to learn the trade-off between the code-intensive C that takes little machine memory and the memory-intensive Python (and its ilk) that require fewer lines of code. Though crude, this distinction is the first step for new programmers to realize that learning multiple languages teaches them how (and how not) to code.

But Seriously--Which Language Next?

For those without a chosen developer destiny who just want to try something new, there are a few things to consider. One could look at LangPop's language popularity graphs or TIOBE's popularity index and see that C, JavaScript, PHP, Java, C++, Python, and Objective-C dominate many of the different popularity metrics--languages also cropping up in "Languages To Learn In 2014" roundups. In short, people are talking about these languages, people are using these languages, and people are hiring for these languages.

One of the most important assets when considering a new language is whether it has a community large and involved enough to answer your questions. Whether from Stack Overflow, GitHub, or even your circle of coder friends, having access to experienced programmers is key to get you learning from mistakes, not quitting in frustration.

The most important thing NOT to do is listen to one person's opinion on the "best" programming language. Stack Overflow's classic "Gorilla vs. Shark" post exaggerates an infamous 2008 inquiry when one user asked whether they should learn Python or Perl and the Q&A exploded with personal vouching and condemnation. Nothing infuriates programmers more than asking which language is superior. Those kinds of super-general comparisons are too apples-to-oranges for professional programming communities to take seriously.

Instead, use Stack Overflow as a kind of Office Hours--and maybe you won't need to take the class at all.

The Proper Road to Learning Code From Scratch

While delving into the wide world of coding seems intimidating, there are so many resources online that you really don't need to spend time in a classroom to get a job coding. Jason Stockman is a front-end developer based in Cambridge, MA who builds websites using HTML/CSS, JQuery, and PHP/MYSQL. He's also the cofounder of ProtonMail, an end-to-end encrypted email provider based in Switzerland. Stockman was a few classes into his computer science college track when he discovered that he knew more than his professors--and promptly dropped out to study online on his own. Even back in 2007, the Internet's resources were fresher than the course's 1999 textbooks.

To him, Stack Overflow was like graduate school: You need to have the basics down before they'll even let your question get answered. Since it's cultivated, only the best questions are up for discussion, leaving lots of rich content, which encourages an involved community.

While he focuses on the User Experience languages that make his websites flow, Stockman also spends about an hour a day catching up on coding news. It keeps him abreast of trends, like the rising excitement over Node.JS, a networking and server-side software platform written in JavaScript.

"Having my ear to the ground on a daily basis helps me decide the next hot thing to learn," Stockman says. "Us developers decide, not business people or anyone else. As a community we actually put ourselves out of business sometimes by adopting new tech. It's kind of scary."

The Academic Foundation

But as the expanding market for programming jobs makes coding an ever-sexier proposition, curious neophytes get excited about Learn Coding Quick sites like Codecademy and w3Schools. This gets trained programmers riled up to explain what those sites don't: that Computer Science students learn the mathematical and rhetorical theory underlying coding language. This lays the groundwork for learning ANY new programming language, which all borrow from programming elements developed in computing's infancy.

"Rule of thumb, about 80% of what exists in programming languages was already available in LISP around 1970," says Crista Lopes, professor of Informatics at UC Irvine. Prior to teaching, Dr. Lopes was a research scientist at the Xerox Palo Alto Research Center and was part of the group that developed Aspect-Oriented Programming and started aspectj.org.

"Deep down, there is no such thing as 'multiple languages,'" Lopes says. "There are a variety of expression concepts, and programming languages are collections of these concepts; some of those collections have some sort of principled consistency among the concepts they incorporate, others are just a fruit salad. Most of the concepts exist in many programming languages, even if they are disguised in different clothes, different syntax."


Can Robot Musicians Play Songs That Entrance Human Ears?

0
0

Tom "Squarepusher" Jenkinson talks more like an engineer than most engineers do, and Pitchfork has described his sound as angry-jazz-droids-run-amok. So when Jenkinson was asked to compose for a group of robot musicians called Z-Machines, he wasn't about to say no.

"Part of what interests me is when we listen to a robot, do we listen to it as if we're listening to a human?" says Jenkinson. "I wasn't trying to make it emulate a human being, but I was trying to make it do something which I wanted to hear. Now the question remains, is the thing which I want to hear a human being?"

Z-Machines were created at the University of Tokyo by CGI artist Yoichiro Kawaguchi, robotics engineer Naofumi Yonetsuka, and media artist Kenjiro Matsuo. Their robots have musical superpowers. The guitarist, Mach, plays two guitars with the aid of 78 fingers and 12 picks. Cosmos triggers notes on his keyboard with lasers and drummer Ashura uses his six arms to wield 21 drumsticks.

"There were certain points within this set of compositions where there can be no argument that it's trying to emulate a human performance, " observes Jenkinson, "because there is simply no human performer that could do it."

Robot Swing

Jenkinson's first goal was to see if he could create emotionally engaging music played by robots. Others have tried. "The initial recordings I had back didn't have me brimming with confidence," he says. "Figuratively, it sounded mechanical. It sounded plodding, uninteresting."

The robots were in Japan while Jenkinson was in the U.K. so he would compose new material, transfer the data, the robots would play it and he would receive the recordings back. Like any good engineer, Jenkinson first investigated the capabilities of his distant virtuosos. "How fast they can play? " he says. "Are there limits like does it start to struggle beyond playing certain numbers of notes at the same time? Are there timing idiosyncrasies when you start to push towards the limit of what it can do?"

The robot musicians had some serious limitations in comparison to human performers. The guitarist can play 125 notes a second, extremely fast for a human player, but each of its guitars have only half the frets of a standard instrument. Every note was played at exactly the same volume so there was no capacity for dynamics or individual string vibrato.

When a human guitarist plays a fast melodic run some notes will run together, particularly when crossing strings, and other notes may be very short or hardly sound at all. The robots, in contrast, played each note exactly on the beat and for the same amount of time.

Having established their engineering tolerances, Jenkinson started to play the robots' limitations by overloading them with data. For example, once the drummer receives a command to play a note, the operation of swinging the stick towards the drum, hitting it, and swinging back to a rest position takes a fixed amount of time. If you deliberately send a new note before the drummer's arm has returned to rest, it takes less time to hit the new note, introducing a timing discrepancy. "That was something that I initially found problematic, " explains Jenkinson, "and then tried to turn it to my advantage to try and sort of generate a kind of a robot funk--playing with its idiosyncrasies to generate a sort of swing, a robot swing."

He also harnessed his mechanical guitarist's strengths. "I found its strongest capacity was in polyphony (multiple simultaneous lines of independent melody)" he says. "In respect of human performance, one of the strongest imitations is the interdependence of your fingers so whatever you are doing with one finger determines what you can do with the others. So if it's on one string at a certain part of the neck, there's only so far that you can reach to other frets and so far across the neck and the further you reach the harder it is to make it accurate. All of those considerations are completely by-the-by when it comes to this robot guitar player. "

Reviewing Robot Performers

Jenkinson never met his robot musicians in the flesh, only in videos. I asked him how he rates them as live performers. "It's probably a strange halfway house between staring at a drum machine and staring at a human performer," he says. "You can see the music being made. In this case you can probably see more than you can see with a human being. You can actually see all these pistons moving, you can see the plectrums moving, you can see all the mechanisms which drive the performance. However, my take on it would be that actually it's probably not quite as compelling as watching a human being because there's no sense of struggle. It's like watching an automatic typewriter or a washing machine."

Then there's the knotty question of how to assess the musical performance of a robot. "Certainly when I have listened to people's appraisals of a particular musician's performance, they'll talk about ego or they'll talk about feeling or they'll talk about expression," says Jenkinson. "All these things are human attributes so can we usefully employ those terms when we appraise robot performance? For example if we had some kind of guitar heroics, well, if it is robots doing it you can't criticize it on the basis of it being egotistical because there's no sweating, egomaniac playing it. However, they might say then that the criticism just falls back on me, the composer. There's probably no way out in terms of that."

Why The WebView Is The Future Of Mac OS X Apps

0
0

Twenty years out of date and kludgy, current design tools like Photoshop and Illustrator force designers to create mockups manually. Frustrated by what they felt was an Adobe design monopoly, the creators of Macaw set out to build a totally new kind of design tool.

But when technical challenges popped up, it was an open source project from Adobe itself that saved them--and convinced them that their technology was headed in the right direction.

"We were just a couple of guys who were sick of the way the industry was being run by some of the big companies," says CEO Tom Giannattasio. "It definitely feels like we were revolting against the options we had."

"Hybrid" Desktop Apps Use WebViews, Just Like Some Mobile Apps

Historically, there have been two ways to build an app. The first is to create a native app that runs locally on a device--the best choice when performance and native features (like offline mode) are required. The second is to create a web app using HTML, CSS, and JavaScript that lives entirely online, usually a better choice when the app needs to work across multiple platforms or devices.

However, there is a third choice. Building a hybrid app--a native app shell that contains a web app, hosted somewhere else--has been common on iOS for years. If it's built right, a hybrid app can be fast, smooth, and work cross-platform. The best of all worlds.

"We actually started as a web app so that it would live inside of a normal consumer browser--you would log in, work, configure files on a server somewhere," says Giannattasio. "And we started realizing that normal consumer browsers have a lot of restrictions, and don't make for the best user experience for people. We were building a tool for pros, so we thought experience of the utmost importance that it be fast and streamlined for those users."

The team decided to build a native OS X app, with a UI component called UIWebView displaying the web app they had built. The goal: Get some of the added performance of native software, but still have the flexibility of building a web app hosted somewhere else. But problems popped up right away.

"We started running into problems because Apple throttles performance that you get inside of those WebViews. It was just killing our performance. This was probably the biggest hurdle that we hit. And we were like 'Well shit, what do we do?' We know it needs to be native but we can't get the performance we need," says Giannattasio.

Talking To Adobe, They Discover The Brackets-Shell Framework

How did they find their solution? Ironically, it was from the company were rebelling against.

"We were so frustrated one night that we left, and I went and had drinks with a product manager from Adobe. He was asking what we're built on. I told him, and he's like 'We've got this framework that's open source.' And I was like... I did not know that. We literally went in the next day and completely transitioned the app onto this new framework. Now we can suck all the performance that we need out of it and we can start really customizing it. It's funny right? Because I think our biggest competitors are Adobe, number one, and Google is number two because they entered the space as well," Giannattasio explains. "We are built on both Google and Adobe's frameworks: chromium embedded framework. It's Chrome, just stripped down. And that's open source. Adobe took that, repurposed it for the big built apps in the same way that we wanted to, and they open sourced that. It's called brackets-shell."

This speaks to the weird nature of open source, where bullies are also the benefactors. It also points to a shift happening in business--from competition to coopetition.

"Everyone is helping everyone else. Especially all the small players. We all know each other," Giannattasio explains. "That's something about our industry; it's very community-based and we're all very friendly. These are just problems that we feel Adobe hasn't addressed properly."

Why Are Hybrid Apps On The Rise?

"These hybrid apps--I think people are going to start seeing a lot more of them," says Giannattasio. "A lot of mobile apps have started to move in that direction and desktop apps are starting to do that as well. I did a lot of work with Apple before starting Macaw and a lot of their core applications are basically just HTML based. I don't think a lot of people know that."

Having a hybrid helps work around some of the cons of having a native app that just lives on the computer. App updates don't need to be downloaded by users, since developers can change the app on the backend. And teams don't have to have a developer who specializes in each different platform to create the app (since most development is done with web technologies which are cross-platform). It is a little like Java's tagline "write once, run anywhere," except it actually (mostly) delivers on the promise.

In addition, as one designer friend mentioned to me, there is a psychological legitimacy to native/hybrid over web. No serious designer is going to open Chrome to design something. It just doesn't feel like a product unless it has an icon in your dock.

And as Giannattasio points out, more developers can build this way. Since hybrid sites are made with standard web technologies, even people with basic dev skills can manage. "HTML continues to grow really rapidly, and so the possibilities are just growing and growing. People with normal web dev skills can start to build really really advanced applications," he says.

Why Old Tools Don't Meet Modern Design Needs

So why does Macaw require a native shell to run? Its because it has twin engines that require a lot of processing power: a layout engine and a design-to-code engine called Alchemy.

"The first layout engine was very similar to Photoshop's layout engine. It used absolute coordinates," he says. "But we quickly realized that that makes no sense when it comes to the web, and it wasn't sufficient for a web designer's needs. So we moved toward a real-time layout engine that calculated the margins, floats, clears and all the necessary layout logic for you on the fly."

People refer to this type of tool as "The Holy Grail" because it's design tool that knows how to code, says Giannattasio. "Basically what we're doing is we're hunting down all these relationships in the document in the same way that a developer would. We're doing is finding relationships between elements and automating that."

Macaw is the newest, but not the the only player in the space. Both froont and Bohemian Coding's Sketch app are similar tools--and they have had more time to improve on them. All these tools are working toward the same end: conflating design with development, so that designers can create apps without writing much code.

"It's really important that we automate the coding process, and implement best practices because, Why not?" Giannattasio argues. "Why should we have to sit there and write out all this stuff when 80-90% of it is the same stuff that we write for every other project? If Macaw understands enough of those best practices, why can't it just do that for us?'"

Admit It, GIFs Suck. So Why Won't They Die?

0
0

It seems that there isn't much on the Internet that can't be summed up in a GIF. Miss something on TV? Don't worry, we GIFed the best parts. Want to respond to a news story or a friend's announcement on social media? Words are so passé--just GIF it, man. You can even make your own. GIFs are great, right?

Wrong--sort of. The ubiquity of GIFs belies their awful technical constraints. GIFs are old--the format was invented in 1987--and with age, comes a lot of baggage. Surely there are better options 27 years later--why haven't they caught on? And what would it take for that to happen?

"When you look at the history of the GIF and its emergence in the late '80s, one thing that's worth pointing out is that the GIF as a media format is still relatively new," says David Hayes, head of Canvas, a creative think tank at Tumblr, which hosts millions, if not billions of GIFs. "Especially when you compare it to the 50 plus-year reigns of prior formats like photography or film," he says, the GIF is still new as a medium of expression, if not especially new as a technical format.

Hayes says there are in fact two kinds of GIFs--GIF the medium and GIF the file format. GIFs, like Kleenex or Post-its, have crossed the ubiquity threshold into becoming the accepted name for an entire product category--brief, soundless, eternally looping animations in this case. What's more, according to Hayes, newer formats like .GFY or .APNG aren't guaranteed to be adopted by the public simply because they're more efficient. Hayes stresses that thus far, these formats "remain evolutions of the .GIF, not catalysts for an entirely new direction."

"Media formats--just like ideas--tend to grow and thrive depending on the degree to which they can be manipulated and extended by the users," says Hayes. "This requires perhaps the greatest condition for adoption, and that's openness." However, GIFs weren't always so open.

After its invention by CompuServe employee Steve Wilhite, the GIF format saw a surge in popularity when Netscape Navigator 2.0 became the first major browser to support them. But the format had a problem: It used a patented compression algorithm. Over time, licensing fees were paid and companies bought out, and in the early 2000s, the GIF was finally in the public domain. Just in time for the web apps of the Web 2.0 era. Then came YouTube and an abundance of web media--and the GIF's second shot at the big time.

"In the late 2000s, there's so much video, there's so much content to be used and interpreted, that this medium can condense into something that was a little more manageable," says digital artist Kevin Burg of the GIF's second wind. "It took on this whole way of expressing or re-expressing all this video content that people had access to--because of YouTube, really--and that was really the only format that made sense."

From Burg's perspective, much of what enabled the GIF's modern ubiquity wasn't just the fact that it was widely supported, but that a platform arose to collect and share them--Tumblr. "Once people started seeing content like this and communicating in this way, it really just blew up." Burg says.

Tumblr site What Should We Call Me is often credited with opening the floodgates, popularizing the use of GIFs as conversational shorthand, but other things were happening too, further cementing the GIF in the media landscape. Kevin Burg is actually responsible for one of them.

Together with his partner, photographer Jamie Beck, Burg is one half of Ann Street Studio and co-creator of the Cinemagraph. They're sort of like the GIFs you know, but carefully crafted to restrict animation to certain aspects of an image. It's what Beck and Burg call "the infinite moment."

"We started creating Cinemagraphs because we felt video has a tougher time on the web--for what we're doing," Burg says. To him, it's a recurring thread that runs through everyone who's working in the GIF medium. "Everything I've seen has really been reactionary to video… I don't feel like there's a whole bunch more that can come from GIFs, it's hitting some sort of critical mass, I think."

To Burg, the answer to a GIF successor lies somewhere in forthcoming advancements in HTML5 and mobile platforms--but the heir to the GIF throne won't come about because it's more efficient, but because it's more expressive.

"It is like a whole new medium. Cinemagraphs is a whole new thing. People have understood, with the web, we have images, we have video--people understand what to do with that," Burg said. "But this kind of in-between thing is a very new phenomenon."

It seems then, that a more efficient file format will not replace the GIF on the Internet simply because the Internet does not care. At least, not while there are more memes to start, more culture to digest and share, or more room for strange experimentation to continue.

Genie Alfonzo is Tumblr's media coordinator, and someone who is very plugged in to the network's creative community. According to Alfonzo, the Tumblr-verse won't be running out of strange new ways to implement GIFs anytime soon.

"One recent subculture that I've seen is creators adding sound to the GIFs, and personalizing it to not only fit their own community but also different fandoms," Alfonzo says. "People can use the sound to make the GIFs mean a little bit more than just the silent movement."

Take, for example, this GIF compilation in conjunction with the Benny Hill theme. Or this Kardashian GIF set to M.I.A.'s "Bad Girls." Or Patrick the Starfish riding a seahorse in sync with The Doors' "Riders on the Storm."

"I think that the opportunities with GIFs are still untapped," says Alfonzo. "GIF creators and artists are [still] trying to break into the GIF community for a chance to express themselves... I think that there's a lot that the GIF can still offer for the time being."

These Interview Fake-Outs Reveal What Your Employer Really Wants To Know

0
0

There are few professional rituals as steadfast as the job interview. But there is one way in which interviews are changing: They're accounting for personality. These characteristics are called soft skills, or emotional intelligence. Assessing soft skills is about determining if a candidate is someone the employer actually wants to have around five days a week, says Daniel Flamberg, managing director of tech-centric ad agency Publicis Kaplan Thaler.

"I ask a lot of questions," says Flamberg. "I look for little things on the resume. 'Oh, you're a hockey player, tell me something about that.' I'm looking to see, do you really care?" He's trying to sniff out how you explain yourself. Are you just tossing out personal tidbits to seem well-rounded, or do you have real interests to share with other people?

It's tough to know when you're being pressed on your soft skills because they're so often discussed abstractly, says Allison Hemming, CEO of digital talent agency The Hired Guns. Her team strives to "take that amorphousness of soft skills out, and put some tight [boundaries around] things that are really important, that are hard to quantify," Hemming says. "Like leadership. Like optimism."

Here's a quick primer to help you decode what interviewers are really asking.

"Interpersonal Skills" Questions

Don't call it teamwork, cautions Hemming. According to Hemming, when an employer says they value "teamwork," oftentimes they're really looking for what Hemming calls "coalition building."

"Getting teams to follow ideas, getting people to work together toward a common mission--there's being a good team member," says Hemming, and that's a great quality. "But there's also individuals who have the quality of coalition building, which makes those people a force multiplier in that organization." Oftentimes employers ask about interpersonal skills in a way that most normal, well-adjusted people would think they qualify. But be sure to ask whether their definition of "teamwork" is inter-team or intra-team--or both.


Are you an employer, not an applicant? Read this: Forget Resumes And Hire By Audition To Find The Best Employees


Another reason employers ask about teamwork is to ascertain how much leadership you need (or don't need) to be productive and effective. "[One] question that I ask," says Flamberg, "is 'if you were writing operating instructions for your next boss, and the goal of the operating instructions is to have you be at optimum productivity and optimum happiness--what would the instructions be?"

Flamberg has found that how a candidate answers that question is a good indicator of how a person sees themselves fitting in on your team. "It reveals certain kinds of ambitions and reveals where people place themselves in the food chain," he says.

"Initiative" Questions

This is one of the more common soft skills probed in interviews. As this list from Business Management Daily shows, questions designed to gauge your "initiative" hew to a formula; the interviewer usually asks you to give an example when a task led you outside of the parameters of your job, and how you handled that.

But make no mistake, says Hemming--this question is all about hustle.

"We start all searches around The Hired Guns' DNA, which is, Are you a builder?" Hemming says. "Do you like to do first-time-ever things? Do you like to super-size? And when you run into a problem, can you tinker with it to the point where you can rethink the challenge and pivot and get there?"

Answering a question like this should be easy: Most companies are looking for people who are willing to go above and beyond if necessary, and you want to show that you're that person.

Spotting "hustle" questions should be just as easy. Except when it's not. Take this sample Google interview question version below, which personnel boss Laszlo Bock gave to The Guardian. In interviews at Google, he says, candidates are asked unexpected question like, "What shall we have for dinner this evening?"

Don't say "I don't mind" or "I'm easy, really," or "What would you like?" or any of that rubbish. If we're going to solve the dinner problem your opinion is required, so stand up and give it. This is the kind of "emergent leadership" that Google wants: the willingness to take charge when required, and not take charge when not.

"Think-Fast" Questions

These are the real curveballs--the ones that make your palms sweat and make you wonder if there's some hidden meaning or quality that you're supposed to display in order to finish with aplomb. They can be about anything, really. Some examples I found:

It's natural to overthink these questions, but in most cases you're better off not reading too much into them. In many cases, they're just meant to see how well you deal with something unexpected--the trick isn't necessarily the answer itself, but how well you handle yourself in giving one. The interviewer is trying to see what's behind the carefully cultivated persona you project.

Daniel Flamberg likes to do this by asking candidates what pisses them off. Going into a job interview, "everybody's got their game face on," says Flamberg. "They've got the seven interview tips at the front of their mind. You're trying to get some little glimpse of reality."

Similarly, Allison Hemming and her Hired Guns team like to ask candidates how lucky they are--a candidate that believes they're lucky is probably an optimist; one who believes they create luck probably have an entirely different disposition--which answer is desirably depends entirely on the job, of course.

How You Can Fight Back

Don't wait for the interviewer to probe your soft skills--bring them right into the fore yourself by sharing the right kind of personal details. As the U.K.'s National Career Service notes:

Don't underestimate examples from situations out of the workplace--if you've got kids you'll be used to managing your time, working under pressure, being creative and communicating well.

If you're an introvert or you get anxious easily in social situations, try starting the discussion via email before the interview, so you can get some of your persona across in writing. "Interview questions can be done all kinds of ways," says Hemming. "Don't put your blinders on and think it has to be oral." Her agency uses a lengthy written questionnaire as part of their vetting process.

"Getting written interview questions back gives you a sense of the person, and how they think and how they're able to persuade. I mean, that's the ultimate in persuasive argument, right? You're vying for a position and saying 'here's why I'm the right person.'"

Who's Afraid Of A Robotic Newspaper Editor?

0
0

Today's discussion: Do robot editors lack the "serendipity factor" that human editors add? What kind of publications need a human at the helm? Are readers being done a disservice, or is this an improvement on the public's access to information?


The problem is #Open001's algorithm uses metrics like Facebook shares, tweets, and comments.

That guarantees its content will be the brain-cell-killing kind of stuff that publishers call "content," instead of real stories and, you know, real journalism. An algorithm that uses social media metrics to curate its content is the equivalent of giving equal control of editorial to anyone in your audience--even that one reader that gets a kick out of Honey Boo Boo. Think I'm being cynical? Check out this infographic detailing the real news (i.e., Syria) and how much it was shared on social media versus competing non-news like Miley Cyrus. --Michael Grothaus

Nearly every major media company is already using algorithms to highlight high-quality or trending content.

The only difference here is that the Guardian is firing up the (literal) presses because "reading from the screen is fucking awful."

But that's not quite true. Reading a long-form news story on a mobile-enabled website is often frustrating--but that's because of the user experience, not the screen itself. You have have to be online; you have to have time to read at the same time you discovered the article; and you have to plow ahead in the face of distracting ads, extras, and navigation elements. That's why I rely on Pocket, which is similar to Instapaper, but superior: It enables me to save long-form content for offline reading, when I have the time, and it presents the text in a clutter-free interface that is reminiscent of iBooks and other apps that need to display words by the thousand.

The Guardian is solving the wrong problem. Sure, use an algorithm to identify the stories I should read during a moment of quiet with my coffee. But don't kill trees in order to address a user experience issue. --Ainsley O'Connell

Paper is a great for long-form journalism, even if algorithms pick those stories.

There's scientific evidence that supports the claim: Scientists say that the human brain interprets groups of paragraphs as a physicallandscape, one that engages the parts of the brain that make mental maps. You are built to read words in 3-D space. That's not to mention that the feel of paper has a poetic quality to it. Last year in Scientific American, Ferris Jabr wrote, "Turning the pages of a paper book is like leaving one footprint after another on the trail--there's a rhythm to it and a visible record of how far one has traveled."

The Long Good Read newspaper went live last fall at the #GuardianCoffee café, in London's hipster Shoreditch neighborhood, with the understanding that you just want to take your eyes away from a screen sometimes. Ainsley hit it on the head when she said that some digital magazine apps do provide a good user experience when reading those long pieces. But I will diverge and say that paper is neither a waste of trees, nor is it a bad excuse for improving user experience. It just gives you a chance to occasionally take your eyes off the screen. --Tina Amirtha

Human beings still select the articles in the Guardian's algorithmic newspaper.

Those people don't just have "editor" in their job title. The Guardian hasn't published the full details of the robot's algorithm but the main selection parameters beyond length appear to be social media shares and comments.

NewsWhip tracks the world's most shared news and the company recently published a selection of "people-powered front pages." It renders what the front pages of newspapers around the world would look like if organized by reader popularity. Among other gems, it revealed that on the day the analysis was done, the readers of both the U.K.'s Daily Mail and the Guardian--two publications with very different readerships--chose the same top story.

"Our people powered front pages, and all of NewsWhip, is driven algorithmically," NewsWhip's cofounder Paul Quigley told me recently. "But what we're aggregating and processing is 100% human decisions and signals of quality: decisions to share, tweet, and comment on stories."

I asked Quigley what a truly automated news machine would look like. "I think the perfect human-less process for distributing and filtering stories to the people who want them has a few constituent parts," he explained. "First, amazing entity extraction and semantic analysis: knowing what a story is about and how it relates to other stories; second, quality assessment: Is it of interest generally? To leaders in your niche? To 35-year-old Manchester United fans who live in London? Who's been sharing it and reading it and arguing about it? Third, Machine Learning: Is it of interest to you based on your history? Based on the news machine's map of what you've engaged with before, will you want to read this story?"

Quigley, however, still has a soft spot for the old-fashioned, fleshy, human editor. "At a personal level I still love a good curator like The Browser," he says, "which in a sense was an inspiration for NewsWhip." --Ciara Byrne

A lot of people don't realize that machines have been writing news for years.

Sports briefs, crime blotters, obituaries, weather--this is the bread and butter of "cyber stringers." And it's getting more and more common.

A couple key companies behind what's called auto-writing are Narrative Science, founded as a partnership between Northwestern University's schools of engineering and journalism, and StatSheet. Each use algorithms to sift through data sets and craft original stories and graphics. Machines are editing, too; Wikipedia has used robot editors for years. And it's not just news. Machines pen books and even poems. And there's applications stretching far beyond the word, into the world of science and manufacturing.

Reactions to the Guardian's move (which began in December) are mixed because people are worried that robots lack the institutional knowledge, savvy, wit, and human emotion to write. The bottom line is, well, the bottom line: If the Guardian and similar organizations can save money by using machines as scribes, it will continue. And chances are no one will even notice. That is a disservice to the men and women reporting and writing the news, but likely another casualty in the push toward digital media, and improved revenues. --Adam Popescu

We shouldn't consume media just because we might agree with those views.

We should be exposed to all types of stories. And human editors can make sure that happens, although they don't always follow through. It's not quite the same as following partisan politicians on your personal Twitter feed, but there's a filter-bubble issue here: just because something is popular on social media doesn't mean it's newsworthy, educational, or important--or accurate. Small factions could also rally behind a story and skew the topic's relevance. --Bryan Lufkin

This Is Your Brain On Code, According To Functional MRI Imaging

0
0

In order to expose more students to computer science, 17 states have passed legislation to create basic math and science requirements in the curriculum, rather than count as electives. But lawmakers in Texas have made computer programming count toward a foreign language requirement, with Kentucky and New Mexico gearing up to follow suit.

So, is coding language or math?

How Human Brains Interpret Coding

Here's how the debate is shaping up. Those in the math and science camp argue that computer science encompasses more than just the "language" the computer can interpret--specifically, it requires learning algorithm logic that necessitates specially trained technical instructors.

On the other hand, the "code-is-a-foreign-language" proponents are fiercely stating their case, seeing an opportunity to fill in curriculum gaps left behind by shrinking foreign language departments in schools.

While lawmakers and educators alike fight over whether computer programming is considered a foreign language or a math, there has been virtually no scientific evidence to support or refute either case. That is, until now.

The Study

Researchers at the University of Passau, University of Magdeburg, Carnegie Mellon, Georgia Tech, the Leibniz Institute for Neurobiology, and the Metop Research Institute put their heads together to figure out how exactly computer programmers understand code. Their study was accepted to this year's International Conference on Software Engineering.

This is the first study in which scientists have looked into the brains of programmers, using the imaging tools of neuroscience. You can find the study here in PDF form.

Primary author of the study, computer scientist Janet Siegmund at the University of Passau, was so interested in the "language or math" debate that she decided to peer into the brains of computer programmers using an MRI, in hopes of shedding some light on the issue.

"That was actually my starting point," Siegmund says. She wanted to know how the brain registered the act of programming, which led her to her current research question, "How do coders understand code?"

In the experiment, 17 participants interpreted a few lines of code while lying down inside an fMRI machine. All of the test subjects were university students that had an undergraduate understanding of programming and the Java language. Two of the 17 participants happened to be female.

Each person read several different Java code snippets of similar difficulty so that the researchers could average the resulting brain imaging data. To rule out brain activity that was not related to interpreting code, the researchers subtracted imaging data related to an error detection task. They found that error detection did not activate the parts of the brain that dealt with the code interpretation task.

All of the test code consisted of several lines, at the end of which the program would print an output. The participants' task was to predict the printed output after studying the code. All of the participants were capable of understanding the code within the given time frame.

The Programming-Language Link

So, does computer programming fall into the languages subject area?

"It appears to make some sense, based on what we have learned from the study," Siegmund says.

But Siegmund stresses that more research would better solidify her conclusions, especially since this was an initial attempt to answer the math-or-language question. She says, "Actually, with these kinds of studies, you should always say that more studies need to be done. But what we found is that it appears to be related."

Future studies might improve on the current experiment. "We had a very artificial kind of testing because you really had just small source-code snippets with, like, 20 lines of code," Siegmund says. Anything larger would have fallen out of the viewing area of the small mirror that was tacked onto the inside of the fMRI machine.

What's more is that the code could not be so difficult that the subject could not finish the task within the allotted time. Real-world programs usually contain numerous lines and would likely stump the external reviewer.

Christian Kästner, the second author of the study, elaborates on why more work needs to be done. He says, "There is no clear evidence that learning a programming language is like learning a foreign language, but our results show that there are clearly similarities in brain activations that show that the hypothesis is plausible."

It is important to note that the participants did not actively write computer programs in the experiment. They merely read code chunks for understanding. So, it is inaccurate to definitively say that computer programming is more a language than a math. The truth is still out there.

Neuroscience And Computer Science Collide

Earlier attempts to understand programmers' cognitive abilities used qualitative measures and mostly relied on self-reports from the programmers the experiments were done on. But Siegmund decided to use a hard-data method from neuroscience to directly measure a programmer's understanding of the code using fMRI imaging.

The colored areas were the active brain regions when the participants read and understood the code.

Embracing the tool carried a learning curve. "You need a lot of experience with fMRI studies. You need to know how the machine works and what you can do with the data," Siegmund says.

A chance meeting with biologists at a conference brought in the know-how that Siegmund and her colleagues needed in order to properly plan out and interpret the data from their fMRI study. "I don't think we would have been there if we didn't have the new biologists on board," Siegmund says.

Blurred Lines Between Math And Language

The study might give insight into how reading code could impact a student's brain. Even so, it is difficult to know for certain if other parts of the brain were activated.

Last year, neuroscientists did a study on patients whose brains were implanted with electrodes. Using this invasive method, they were able to pinpoint a region of the brain that processes numerals, called the inferior temporal gyrus. They further concluded that this region is physically near the area responsible for language processing.

It is possible that the fMRI in Siegmund's study may not have been able to detect activity in this region. Maia Szalavitz, writing for Time, wrote, "Since the inferior temporal gyrus is so close to the ear canals, functional MRI machines, which detect changes in oxygen use and blood flow by nerve cells, may not be as sensitive to the activity of neurons tucked away in that area."

Even more evidence confounds the distinction between language and calculation processing areas of the brain. A year 2000 study concluded that the same region that is responsible for processing semantics is also important when performing mental calculations. Incidentally, Siegmund and her colleagues found activity in this same region.

No matter which way you look at it, most brain imaging studies remind readers that activated areas that show up with the chosen imaging method correspond to several different processes that are open to interpretation.

Siegmund and her colleagues also concede that the way they interpreted their study's results is open for review, writing in the paper that they might have missed important processes.

But Siegmund reiterates, "The activation pattern that we found shows very clear and really distinct areas are activated that are related to our current understanding of program comprehension."

Comp-Sci Is More Than Just Code

Even if Siegmund's and Kästner's study has showed a relationship between reading a computer program and the brain's language centers, it does not speak to the field of computer science as a whole.

Amy Hirotaka, state policy and advocacy manager at the non-profit Code.org, wrote in an email to us, "Computer science is more than just code. The fundamental concepts of computer science--like logic and problem solving--align well with mathematics and science disciplines, extending beyond simply learning a programming language."

Considering now that computer science could come out of a school's foreign language department, Hirotaka sees issues with teacher quality down the line. Each department has its own ways of certifying a teacher's credentials. It suffices to say that getting foreign language and mathematics departments to converge on one credentialing standard would create an administrative mess, even if it would give students more foreign language options.

Hirotaka added, "Counting computer science as a foreign language might sound like a creative fix, but it causes major problems when it comes to teacher certification and departmental alignment."

Programmers' Brains In The Real World

School policies aside, the study could pave the way for improvements in the programming field. Kästner is quick to point out that using neuroscience can help us determine what makes a great programmer different from an average one.

"We still have no clear idea how to train really good developers. For decades researchers have found that there are individual programmers who program more productively at higher quality and also do most of the communication in the project. These are often referred to as 10Xers because many studies found that they produce ten times more code, or in a tenth of the time or do ten times more communication," Kästner says.

He adds, "We know that these developers exist; we often quickly recognize them. Most of us know at least one such developer, and every tech company tries to hire them. But we have no idea how they got there or whether we could train others to excel at similar levels. Studying how program comprehension differs among novices, professionals, and 10Xers may allow us to get a better understanding of what makes a truly excellent programmer."

Siegmund imagines that the research could result in better software syntax. "Now that we actually have a better idea of what is happening inside a programmer's brain, we found that it was related to natural language processing. Maybe programming languages should be more like natural languages," she says.

"The more domain-specific languages, like SQL, are more close to natural language processing. It would come closer than Java," says Siegmund.

All things considered, the researchers' biggest takeaway from studying programmers' brain activity is the possibility for even more discoveries in computer science and software engineering.

"This opens the door for many future studies in this field. The actual activations found in this study are nice and confirm mostly what we expected, but the key result is a proof of concept of using fMRI as a tool in software engineering research," says Kästner.

If you want to get your language processing centers working away, try perusing the Java snippets from the study here.

Eight Strategies For Tackling Legacy Code You Didn't Write

0
0

Most developers have at least heard this axiom before: "Programs must be written for people to read, and only incidentally for machines to execute."

The idea is simple. If someone writes code that is perfectly executable, but no other engineer can read it, then it's bad code. In a magical software utopia this would be rare, but in real life things get messy. Languages and conventions go in and out of style. Developers go on vacation or switch jobs, and a dragon-like legacy code is left behind for shiny new developers to grapple with.

I talked to developers at Shopify about how to deal with spaghetti code you didn't write. (Not only that, but we got their best tips in writing clean, bulletproof code that won't make future developers hate you.)

Above all, discovering the other developer's motivation is the most important part of wading through unfamiliar code, says James MacAulay, Toronto Engineering Lead at Shopify. Let's assume you're starting with a working program, but one that's far from perfect, and you've been asked to take over. How do you do it?

1. Start Small.

Wading into legacy code can feel like walking blindly into a minefield. Some developers are too afraid to touch it, and then you're stuck unable to implement new features altogether. Fear is your worst enemy in facing legacy code. But you shouldn't cannonball into it, either.

At Shopify, new hires start with a few small bug fixes. The same method works when you face ugly code, says Peter McCracken, software developer at Shopify. Before you make any changes, start out by firing small bugs that were recorded, and go from there, he says. "By touching a few small files of code, it gives you a little tickle, and eventually you get to see the bigger purpose."

2. Don't Judge.

"It always seems like a disaster at first," McCracken says. It's human nature to confuse unfamiliar with worse, but be patient and don't make rash judgments, he says.

"It's always tempting to think: 'This code is the worst.' It's faster to rewrite it from scratch than try to understand what other developers did. But your first glance is often an overly simplified take, and over time you learn more about the problem and realize their code actually did make sense, even if there are more functions tacked on."

In other words: If it ain't broke, don't fix it. Try to avoid making big changes to the code, at least in the beginning before you've added unit tests. "I try not to be harsh to other developers because they were doing the best job they could at the time," says McCracken.

3. Talk To Your Peers.

Two other developers must sign off on any Shopify code before it can be published. Not all companies are this diligent, and McCracken admits Shopify is the first company he's worked at where code reviews are totally standard.

Consider him a convert: He says he'd always want to do peer reviews going forward. "It's a sanity check. Sometimes you need someone to tell you: 'This makes no sense.'"

Try to get feedback from other developers, even if it feels cumbersome, MacAulay says. "The costs associated with people trying to understand ugly code are much bigger than the costs associated with taking the time to make it readable."

4. It's All In The (Variable) Name.

The most basic, common problem in reading someone else's code is the variable names (or lack thereof). Both MacAulay and McCracken echoed the importance of choosing descriptive names for variables. Be as explicit as possible about your motivations, they say. Meaningful names make working with old code infinitely easier.

5. Be Conventional.

Most languages have their own set of conventions, and code that follows the conventions consistently is always easier to work with. Shopify uses Ruby on Rails, so there is a directory structure and documentation framework to keep all code bases uniform.

"If you're working with a language that has good idioms and everyone always does things the same way, then it's much easier," says MacAulay. Another pro tip: Keep functions short--a few small gulps is better than a long, convoluted function.

6. When In Doubt, Test Everything. Rinse And Repeat.

Ideally, all developers would follow rules three and four. But what if you encounter ancient code full of obscure acronyms and completely foreign variable names?

First step: Check the documentation. If there's little documentation to explain the functions, the next best strategy is testing. Developers often disagree on how much testing is necessary, but MacAulay swears by it.

By running functional tests every time you add new code, you can slowly implement new features and small unit tests, and eventually draw out what the code intends to accomplish, he says. "Automated testing is the best kind of documentation. It really helps."

7. Learn Different Programming Languages.

This might be abundantly obvious, but the more languages you know, the easier it is to understand whatever code you come across, says MacAulay. It comes in handy to be flexible.

8. Make It Personal.

Even if a developer has followed all the above rules with a draconian sense of discipline, there is still an element of art to it. MacAulay and McCracken agree that it's easier to work with the code of someone they know personally.

"It's similar to being a writer or artist. You can usually identify someone's style of writing, even if it's embedded in a well-defined structure," MacAulay says.

Reading old code can be a glimpse into another developer's personality, or even another era. "People cluster around certain languages and these frameworks develop over time so it's sometimes obvious that code was written four years ago, just from seeing a pattern of conventions," says MacAulay.

At Shopify, a consistent framework of conventions is used throughout the company. But the conventions have changed over time, both formally and organically, as things come in and out of style, he says.

Is Agile The Solution?

Working with other people's code can be unpleasant at best, and a disaster at worst, even for seasoned developers at the most successful tech giants.

Want proof? They're asking for help.

A flock of companies have popped up to offer software development consulting. One of the most well-known of this species is Pivotal, who boasts Twitter, Groupon, Square, and GE among its clients.

"Many of these huge companies have ancient code bases that are very fragile," says David Goudreau, Pivotal Labs' VP of Engineering, West Coast. "We regularly have people come to us saying: It takes us too long to implement a feature now, because the code base is so complicated, everyone who originally wrote it has left, and everyone is afraid to touch anything."

The San Francisco-based consultancy is a hodgepodge of different platforms, all strewn together with a broad mandate: Teach companies how to build web and mobile software for rapid deployment on a large scale--which is what Google, Amazon, and others have mastered over the past decade.

At the heart of Pivotal is Pivotal Labs, who works with startups to beef up software development through "agile" strategies. Programmers here work exclusively in pairs. Two keyboards, two mice, and one computer assemble at each workstation, where two developers build the same piece of software. It's meant to be a focused, seamless conversation during which two brains work as one. There is no email, texting, or web surfing, and distractions are discouraged.

Pair programming may seem borderline fascist to an outsider, and has sparked inevitable backlash. See: An April Fool's day video titled "Spooning", a spoof on pairing, or the rabbit hole of threads on Reddit about pairing nightmares.

It forces developers to sit in close quarters for hours, a far cry from the warm blanket of solitude many coders are accustomed to. Goudreau admits that some client developers can be "apprehensive" about pairing.

In practice, pairing is rare outside of "agile development" and extreme programming camps. Even so, Pivotal's agile strategy been credited for shaping Twitter's development culture. Jack Dorsey once announced that the cultural contributions from Pivotal to Twitter have been "quite meaningful",and that much of Square's development process is actually based on Pivotal's process.

It's a wildly useful concept, especially when it comes to working with old code bases or introducing new hires to an existing code base, says Goudreau.

With pairing, you are never dependent on just one engineer for a project, because all code will be touched by at least two developers, says Goudreau. This helps prevent "information siloing", a common occurrence when each developer in a project has a specific task, such as front end or DVA. They won't see the other sections of code, and if someone goes on vacation or leaves, the others are stuck.

"We always focus on the 'bus count.' How many people would have to get hit by a bus before the team would be in trouble? Ideally the bus count is as high as possible," he says.


The Secret To Engineers And Non-Engineers Getting Along Is Simpler Than You Think

0
0

Being an engineer working with a non-technical colleague, cofounder, or manager can be a challenging experience--they often don't understand the true complexity of what's being built. So too can being a non-technical business person working with engineers when they slough off deadlines or ignore nagging bugs. Far too often, the chasm of understanding between these two groups can create frustration--or worse. But it doesn't have to this be way.

Here's how to think about the relationship, no matter which side you're on. Hint: It's the non-technical folks who have to extend the olive branch.

How Technical Should A Non-Technical Employee Be?

"When I look at the balance in a startup, what I try to do is evaluate teams rather than individuals," says Bubba Murarka, a general partner at VC firm Draper Fisher Jurvetson, and a former business strategy guru for Facebook who helped broker key deals with the likes of Microsoft, Netflix, and Yahoo.

"When I look at a team of cofounders, I want to see a totality of skill sets realized--which does include technical skills, says Murarka. "But while sometimes that's going to be one person with all the skills, sometimes it's two--or even up to four, which is the largest number of cofounders I've seen."

To Murarka, it doesn't so much matter that every member of the team is a master coder, as it does that all team members realize it's the programmers who actually bring the application to life. In this way, being a productive team member doesn't have to mean technically being able to code, so much as it does being able to articulate your competitive advantage and your long-term mission statement in technical terms.

"In some ways, having a clear vision of the future that you can convey to the other people in your group is the most important technical skill you can have," he continues. "That might mean coding--or building software--but other times it means knowing enough about what you want to achieve to bring the right team of people together to execute your vision. The predominant technical skill you need as a founder is to know what it takes to solve problems, build a product, and bring it to market."

Have Empathy For Your Coders

Since coders may spend more of their day writing in (say) Python than they do English, it is no exaggeration to say that business people and programmers speak different languages. This can be a cause of friction within working relationships, and is one reason why it is advisable for all team members--no matter how technical--to have a basic understanding of code.

"At Facebook, my technical background made me uniquely valuable in the role I was doing," says Murarka. While he wasn't expected to be technical as part of his role, the fact that he was able to interface just as easily with people from all parts of the company made his job that much easier.

"If you're a smart founder, I think you want to understand what it is that the people around you are doing," Murarka continues. "A struggle I see with non-technical founders is less to do with the fact that they don't have a technical background, and more to do with a communication problem because they can't work out how to get people who are highly technical to believe in what it is that they're after."

"Non-Technical" Should Really Mean Semi-Technical

Redpoint VC Ryan Sarver--formerly Twitter's director of Platform--agrees with him. "I would recommend anyone who wants to work in tech to at least get some basic competency skills as a coder," he says. "You don't have to be amazing at it, but at least have that baseline understanding of what it is that you're working on. There's a real advantage to be able to build and prototype something that you're thinking about, which engineers uniquely have. Even if it's not the version that ends up shipping, it's a great way of getting people to rally around a product that you're thinking about."

For Sarver, it goes deeper than being self-sufficient. It also fosters a type of professional empathy, which he views as key for business relationships.

"Speaking personally, I was never the best engineer, but I had enough competency in it that I was able to have empathy for the people I was managing, because I knew what I was asking for, and what this actually meant in terms of the amount of work I was asking them to do," Sarver says. "It matters both in having their respect, but also in terms of managing a team. You know the difference between a tough development or an easy development. Without that, I think a lot can be lost, and that can make your job much harder as a manager of people."

Different Types Of Hammer

But while coders might therefore feel justified by demanding that their boss understands a bit about what it is that they do--just as a hotel owner should have an appreciation for what a hotel receptionist goes through--it is also important that they try and appreciate the importance of different skills.

"There needs to be an appreciation of what non-tech founders bring to the table," says Paul Biggar, founder of automated testing startup CircleCI, and a PhD in Computer Science. "Building relationships, and off-line traction and community--these are the kind of things that non-technical founders can be very good at. When I look at the skills that have served me best as a founder, the vast majority of them have been non-technical by nature. By that I mean the ability to talk to people, the ability to convey a vision, the ability to coalesce customer requirements into actual products."

Ryan Sarver also points out that the systematic approach of the coder can sometimes differ from the approach of the non-technical person. While this can result in contrasting--sometimes conflicting--viewpoints, it can also be invaluable in creating an effective solution.

"If your [company's] only hammer is a technical one, then every nail looks like something that can be solved through technical solutions," Sarver says. "The best teams are the ones that are well-rounded, and can bring different points of view. Sometimes I worry that Silicon Valley over-rotates toward technology being the only available solution."

Sarver points to a company like online voucher service Groupon, which adopted an approach to business that could only possibly have come from a non-technical founder.

"The main question comes down to problem solving," he continues. "The successful entrepreneurs and founders are able to single out a problem in the world, and work out how best to solve it. There are certainly some problems that are best solved through technical solutions, but there are others that aren't always about creating the most beautiful technical solution. Sometimes people without a technical background can have a different way of thinking about problems in a way that brings a fresh perspective that you might not get from a technical founder."

To Code Or Not To Code

At the end of the day, technical and non-technical team members have different approaches to what they're doing--but arranged correctly this can result in a more positive, inventive approach to business.

"My philosophical answer to the question is that people should focus on where they have passion and strength," says Bubba Murarka. "If they find themselves enjoying the process of software engineering and coding that's great--it's something I would recommend they take further. At the same time, limiting someone's options in business because of something they don't feel passionate about is only going to stifle untapped potential. My pragmatic answer, however, is that if you want to maximize your chances of successfully running your own tech company, being familiar with software engineering is a tremendous advantage."

By exposing themselves to different ways of thinking about work, both technical and non-technical individuals can benefit. Coders should expect everyone they work with to empathize with what it is that they're doing--but should also be open to problem-solving approaches that are non-technical in nature.

And as for non-technical folks embracing coding?

"I liken [coding] to knowing the Matrix exists," Sarver says. "Suddenly you're able to manipulate the world around you, and understand how everything fits together. When you're thinking about problems you want to solve, it gives you a different skill set. You don't have to be deeply technical [as a founder], but it's incredibly useful to be able to understand how the machines you're interfacing with function. You see a world that was there the whole time, but that you now have a more solid grasp of."

Ultimately, it's all about balance. Get that right, and you're onto a winner.

How Facebook Uses UX Research To Personalize The Way We See Each Other

0
0

We've all been there: You get a friend request from somebody you don't immediately recognize, and start thumbing through their photos for clues. If you've ever wished Facebook would make this kind of benign social "stalking" easier, you're in luck--they just did.

You see, Facebook recently made profiles more "contextual" on their iOS app. That means that like Google searches or other personalized experiences, Facebook profiles will now appear differently based on who's viewing.

"We wanted to know what people find useful when they look at their friends' profiles." says Facebook UX researcher Shivani Mohan. "And what do they not find very useful? When people are going to the profile of a person who is not their friend, we wanted to know the same thing."

To figure out the look and feel of these dynamic layouts, Mohan and her team did tons of user research, both digital and analog. Here's what they learned.

Participatory Design The Old School Way

To establish heuristics for making profiles more "useful," Mohan and her team first conducted some old-school user research. In an approach she describes as "participatory design," they actually handed users a pen and printout of a design mock-up and told them to mark it up like a grade school teacher. If somebody thought a given detail was irrelevant, they'd cross it out. If a desired piece of information was missing, they would scribble it in by hand.

For instance, many users wanted the option to call somebody if they were a friend (presuming they've provided their number). On the other hand, when looking at a stranger's profile, a call button would certainly be weird, but a box showing mutual friends might be useful. So participants in the study simply drew one in.

The team repeated this process, handing paper-based mock-ups of the new designs to user after user and asking them what information they sought when looking at other users' timelines.

"There were some really interesting things that came out of this research," says Mohan. "And they came out pretty loud and clear."

When viewing the profile of a non-friend, most participants wanted to know what they had in common with that person: shared friends, a common hometown or a past employer, for example. Thus, those types of details--called "snippets"--are front and center on the new timeline, beneath large swipeable photos that lets users quickly ascertain another important detail: what the person looks like.

Naturally, the desired experience changed considerably when people were asked what they wanted to see on the timeline of somebody they actually knew. For these people, the "snippets" area of the timeline will display a glimpse at their recent activity: a trip they recently took, what music they listened to, or an event they attended.

In a lot of ways, the new profile designs are analogous to bumping into somebody at a party in the real world: If they're a stranger, you try to find out what you have in common. If they're an old friend, you want to know what they've been up to lately. The questions you'd ask somebody at a party were exactly the kinds of things that people wanted to know in Facebook's user testing. And it shows.

"One thing that was surprising when we were doing the research was the unified consensus of the response that we got in terms of the features that we were considering," says Kyle Meyer, a product designer at Facebook. "We got the sense that people were clamoring for the same things."

One of the most universally in-demand features, says Meyer, was the ability to more easily browse through photos. Whether the person is a friend or non-friend, photographs are a uniquely effective way to understand who a person is, what their life is like, and how attractive they might be. And on mobile devices, there's no more natural and intuitive way to browse photos these days than by swiping one's finger across the screen.

Fine-Tuning The Research With Hard Data

The research that went into Facebook's new mobile timeline design wasn't all printouts and magic markers. As you might expect from a service with over 1 billion users--and the data they each generate--Facebook employs its share of hard numbers and user behavior analytics in its research.

"Any finding that we find either interesting or counterintuitive, we always check that with the product analysts to check our logs to make sure that it matches what we find in our research and then we move forward with that," says Mohan.

Users' insatiable appetite for photos, for instance, was probably something that was easy to confirm using aggregate user behavior analytics.

Once the results of in-person surveys are checked against some hard numbers, the design team builds working prototypes, which are tested by Facebook employees internally. This "dogfooding" process--fairly typical at companies like Facebook--lets the team work out the kinks before rolling the designs out to the public, who are notoriously sensitive about even the most subtle design changes.

"While interviews give us a good sense of what people they say they do, we immediately tie that back to what they actually do," says Mohan. "For example, if I repeatedly keep hearing in all of my interviews that people really want to see mutual information, we can actually go back and look across our logs of millions of people's data and see that, yes, most people overall are switching from mutual friends when they're looking at a non-friends profile."

When it comes time to unveil a project like this to the public, Facebook does it in stages. To ensure the changes had the desired result, the new mobile timeline designs were first rolled out to 2% of users and then expanded to a wider audience.

"We waited for the numbers to come back to make sure that we weren't moving numbers the wrong way and that the things that we expected to happen were happening," says Meyer. "We moved immediately to 100% because the numbers were in a very good place."

Programming In Time For Dinner

0
0

Programmers often get stereotyped as night owls--a habit endemic to young programmers. But what happens when those night owls have kids and develop more demanding personal lives? Here are a few ways to think about your time that should take some of the conflict out of your time management conundrum.

What's The First Step?

On the whole, more adult responsibilities--whether kids or just a cat--means less time programming. Counterintuitively, this can be a great thing for your work.

"The best time-saving trick for programming is to think before you type," says programmer and podcasterJohn Siracusa. "Young programmers usually want to dive right in and start coding. But being forced to stop and do something else, by your kids or other family obligations, gives your brain a chance to process things. Heading to bed and resuming work the next day is almost always a much more efficient use of time than trying to stay up until you've cracked the problem," he says. "A tired brain writes bad code. This is true regardless of your family situation. Kids just serve as a handy reminder."

This same type of thinking is independently echoed by programmer Greg Knauss.

"The biggest change I've made, or tried to make, is to simply have a single focus when I'm doing something. If I'm coding, I try to be just coding. If I'm home, I try to be just home," says Knauss. "It's conventional wisdom that multitasking simply doesn't work, and I've definitely found that to be the case for me."

It stands to reason that even with the best intentions, carving out separate time for different activities isn't just something that happens, it has to be intentional. Focusing on work at certain times and family other times has to be practiced rather than assumed.

"I know early on in my career I would often get stuck in the 'things will settle down later' mindset, that if I only got through the current sprint then I'd be fine," says David Smith, developer of Feed Wrangler and Pedometer++. "If you are in a mindset where everything is always urgent and essential you'll never find time for the time for anything else."

Making The Most Of Your Time

Part of managing your work and personal life effectively also means utilizing tools and resources to save time. Knauss calls out Cocoa Controls, Space Monkey, and Harvest as things beneficial to him.

"Browsing sites like Cocoa Controls can be an incredible time-saver. Even if you don't end up with exactly what you want, the code gives you a huge head start," he says.

"I tried time-tracking in a spreadsheet and making my own invoices when I first started contracting, but Harvest is miles better than that," Knauss continues. "Also keeping everything on the Space Monkey not only means my work is backed up, but that I can have everything I need no matter where I am--at home, at work, on the road, on the phone, or wherever I'm camped for the day."

For Smith, outsourcing was also helpful. "Something I've done that freed up a lot of my time was hiring someone to take over doing the customer support/help desk for my products," he says. "There is always something new to respond to, so hiring someone else to be responsible for that helps me stay focused on areas that I'm more uniquely capable of doing well."

Young Programmer, It Gets Better

Of course, splitting your time means prioritizing becomes especially crucial. "Having a family has caused me to pare down my hobbies substantially," says Siracusa. "There's just not enough time in the day to maintain the lifestyle I had as a newlywed, let alone as a bachelor or student. As a result, I'm now much more careful about which projects I choose to do and which events I attend."

But sacrifice isn't as bad as it sounds.

"This may all sound grim to young programmers, but the truth is that I don't like being away from my family," he says. "I'm still choosing to do the thing that makes me happiest; it's just that the tech conference has been unseated from the number one spot. Getting married and having kids has made me happier than any programming project or hobby ever could."

As Smith says, the choice for him is to not bring his work home. "The only way that I've found to get anywhere near a sense of balance is to put in place strong boundaries between work and home time. I'm still available if something blows up--server goes down, et cetera--but by putting the day-to-day parts of my job into a specific time each day I find that I'm much more able to separate the two," he says.

If you're worried about FOMO, don't be.

"Yeah, I feel like maybe I did give up projects for family, but maybe not. Maybe I never had it in me, now, I surely don't," Knauss says. "It's been hard to realize that whatever potential I had has passed, but there are some awfully nice trade-offs. I'm still a productive and useful programmer. I still enjoy technology, but I can't imagine not going to ball games with my boys. I spent a lot of years frustrated that I wasn't doing great things, despite a live-to-code attitude. Now, I don't regret that so much and realize that it might have been for the best. I've got a good life and a great family and however I got here, I'm glad I've arrived."

The Surprising Role Of Social Deviance In Viral News

0
0

Social media platforms like Twitter and Facebook drive about 26% of all traffic to online news stories according to the analytics provider Chartbeat--even more if you're Upworthy or BuzzFeed, to the point that social referral traffic overshadows everything else.

The key to earning those referrals? Clickbait and "curiosity gap" headlines that hook users and draw them in. Publishers of course want more audience, more clicks, and more revenue. So it's not uncommon to find instruction manuals emerging like, "A Scientific Guide to Writing Great Headlines on Twitter, Facebook, and Your Blog," with data-driven tips such as "use numbers" or "ask a question" to drive click-throughs and re-shares. Upworthy tests dozens of possible headlines before settling on the one that works best for engagement.

It's clear that headlines are an important part of the equation for creating an audience around content--but they're also just the entry point. The underlying characteristics of the content also determine whether a story goes "viral."

For instance, news that evokes emotions (particularly positive ones, like awe, but also negative ones like anger and anxiety) are much more likely to be shared.

The Viral Multiplier: Social Deviance

Social deviance is another underlying characteristic that helps drive sharing of news on social media. It's been known for some time that journalists are more likely to select socially deviant events for the news, creating a sort of warning mechanism about social threats to a community. But social deviance also appears to be a more general factor that can help explain interest, attention, and sharing of news on the ever-so-important social channels.

So what exactly is social deviance? When someone violates a social norm like plagiarism, or a legal norm like homicide, they're committing an act of social deviance. Social norms are there to help define what is considered appropriate or inappropriate behavior in a given social situation. By learning about what is considered a norm violation it helps us understand the boundaries of our own behavior and what's acceptable in our society or culture.

In a study I recently published at the Columbia University School of Journalism, my co-author and I analyzed 8,000 news headlines across eight major news outlets--and found that for six of the outlets there was a strong relationship between the social deviance of the event or topic behind the headline and the number of retweets it garnered on Twitter.

Given the two headlines: "Principal busted for spying on students through Facebook quits" and "Oil jumps to 9-month high after Iran cuts supply," which headline are you more likely to click on and share? Unless you're a commodities trader, I would guess the first.

In the following chart you can see that the top 20% of tweets (sorted by number of retweets) had a larger proportion of socially deviant tweets than the bottom 20% of tweets. The upper echelon of the retweeted content contains more social deviance, 23.4%, than the bottom,14.6%.

With the exception of the Wall Street Journal and Chicago Tribune, the other outlets we studied showed that the top 20% of tweets tended to have a higher rate of social deviance than the bottom 20%.

Particularly tabloid publications had higher overall rates of social deviance in general--40.5% of tweets in the top 20% from New York Post referenced socially deviant events, and the New York Daily News wasn't far behind. The Wall Street Journal had some of the lowest rates of reporting on social deviance, just 7.7% of the tweets we analyzed; bankers must not break social norms, right?

We also ranked all of the words in the deviant headlines to see if there were any that were particularly predictive of retweets. The most predictive won't surprise you: When it bleeds it tweets.

Words like "police," "cops," "arrest," "shooting," and "attack" as well as titillations like "porn" and "sex" all boosted retweets. The least predictive words included "accuser," "lawyer," "guilty," "sues," "charge," "allegation," "sentence," and "jury"--clearly related to court proceedings--as well as some others referring to fatality, such as "suicide," "death," and "slaying." Unless it refers to a celebrity (which is an entirely different story), this makes sense: Court dates and suicides aren't things that we generally feel a need to share around widely to our friends and followers.

The two outlets that bucked the overall trend between social deviance and retweets, the Wall Street Journal and Chicago Tribune, did tend to use many of the court-related words listed above more often than the other outlets we analyzed. Even though they're covering deviant news events, the ones they focus on aren't particularly arousing for their audience, at least when it comes to retweeting.

But of course these news events may still have relevance to the communities they affect. Just because a news item wasn't retweeted doesn't mean it wasn't read--more data and further study is needed here to parse out the nuances and differences between what makes news and what makes social news.

There are many other reasons why social media users might share some piece of content besides social deviance: Maybe it's just funny, or maybe you're trying to look smart in front of your friends.

But as with emotion and sentiment, social deviance does seem to be another piece of the equation that helps explain the viral sharing of online news content. Like their professional news counterparts, social media users are particularly drawn to (and tend to want to retweet) content that somehow tests the boundaries of what is socially acceptable behavior.

Nick Diakopoulos is a Tow Fellow at the Columbia University Journalism School working on applications of data and computational journalism. He is also a consultant specializing in research, design, and development for computational media applications. Areas of expertise include data visualization, social computing, and news. Find him on Twitter: @ndiakopoulos

How Duolingo Uses A/B Testing To Understand The Way You Learn

0
0

Luis von Ahn is a busy guy. The founder of the highly successful CAPTCHA and reCAPTCHA technologies, von Ahn now runs language-learning startup Duolingo. His company recently received $20 million in funding for their gamified website and app, which let users learn Spanish, German, English, and other languages for free. Part of Duolingo's success is their unorthodox approach to online learning: Much like online games and e-commerce sites, Duolingo uses A/B testing to hone their curriculum.

The small but crucial difference is that Duolingo doesn't use A/B testing--giving different users slightly different online experiences for the purpose of testing--to sell more consumer products or in-game currency. Alongside standard web design tweaking, von Ahn and his team use A/B testing to find different ways people learn languages--and tweak Duolingo's experiences based on that.

When I spoke with him shortly before the company's release of an updated iPhone app this week that includes Chinese- and Japanese-language support along with multiplayer capabilities, von Ahn was less interested in discussing how English speakers learn Spanish or French than how non-English speakers learn English. There's a reason for that: The company sees the international market as their primary moneymaker, thanks to translation deals with BuzzFeed and others. Due to English being the world's de facto second language, Duolingo sees huge growth opportunities in offering free comprehensive English courses online. And they're relying on A/B testing to help users, both English speaking and non-English speaking, learn.

One of Duolingo's most important discoveries from A/B testing users, von Ahn told me, was to completely switch they way they introduced the pronoun "it" for Spanish speakers learning English. Compared to German speakers, Spanish speakers had a much worse performance when "it" was introduced early on. Although his team expected that--Spanish has no gender-neutral pronouns--they didn't expect to see users become discouraged the way they did on Duolingo. Since "it" was a Spanish stumbling block, they decided to move lessons for the word to a much later point in their course.

Another discovery Duolingo's engineers, linguistics, and coders found had to do with plurals. In a recent Reddit AMA, von Ahn wrote that:

We're basically doing very large-scale data-driven education, and improving it every day. For example, if we want to know how early we should teach plurals, we simply test it. We give a group of 50,000 people plurals a little earlier in the course than everybody else, and we measure: Do these people learn faster, do they learn better, do they stick around for longer? And if it's better, we start teaching plurals earlier to everybody. This approach improves the experience on Duolingo and also is giving us answers to those language questions we really couldn't find answers to when we were just starting out.

Now Duolingo is trying something different: Letting their user community build their own language courses, and giving them their own A/B testing capabilities. Late in 2013, Duolingo launched a language incubator which lets active users crowdsource language courses--in effect, having the Duolingo user community build courses on the company's behalf. Within the next few months, von Ahn says, users who are building new courses will have access to A/B tools just like the company's own developers have. "We want to give them power to test their courses," he added.

In the end, von Ahn told Co.Labs, Duolingo uses A/B testing for two goals: Maximizing the time users spend with the service, and maximizing what he calls their "learning outcome." For Duolingo, they've found that building data-driven learning plans has been the best decision so far.

"Great Ideas" Are Everywhere, But That Doesn't Mean They Should Be Cheap

0
0

As the saying goes, ideas are cheap--it's execution that matters. So what exactly is an idea worth? About $10,000, according to Damon D'Amore. D'Amore is the founder and CEO of WayFounder, a startup that aims to take the best ideas from people all over the world who are constantly dreaming up ways to solve problems but don't quite want to quit their day job and start a business of their own.

"What we say is, 'hey, if you're not an executor, if you don't have the tools and capacity to go build something, and you're relying on somebody else--yes, they need to be rewarded for that," says D'Amore. "But you should be rewarded for the idea that's incentivized them to take the risk on your idea, versus the hundreds of other ones that they get presented."

It works like this: Every quarter, WayFounder holds an open online competition. For 10 dollars, anyone can submit one idea for a consumer app or product in any of four given categories--one idea for each category, a maximum of four entries for each 10-dollar fee. Applicants are encouraged to include as much information about their business idea as possible in addition to answering a lengthy questionnaire.

At this point, it's judged by WayFounder board members and guest judges from the startup community. Winners--up to one from each category--will get paid $10,000 and WayFounder will invest $50,000 toward bringing that idea to market. If it sells, the winner gets royalties, and if it sells well enough to spawn its own company WayFounder will invest $250,000 to get it started, with the winner getting 5% equity.

It would be easy to reductively consider WayFounder to be a mere crowdsourced idea competition, but to do so would be to ignore the most interesting parts of its business model. Like Quirky--a startup that crowdsources nearly every aspect of product development to reliably market products that sell--WayFounder aims to be a startup of startups and democratize the startup industry the same way Quirky flattened product development.

"I want to look at a map of the country, and I want to see 25 yellow pins that are people that have ideas that we empower by taking their ideas and putting them in the hands of 25 orange pins, people who have executed and built companies," says D'Amore. "And each one of those companies might have three to five employees, they might have 20 to 50 employees, but regardless, there are people across the country that we've empowered with the knowledge and experience to then go on and teach others how to take an idea through the customer development process and take it to market."

D'Amore sees WayFounder not only as a way to provide the idea generators he calls Nontrepreneurs compensation and the joy of seeing an idea of theirs come to life, but as a completely different model for launching startups. "When I sit on [investor] panels," says D'Amore, "You hear people saying there can be a great 30-million-dollar business in the audience but we can't invest in you because we need to find the next Facebook."

"We're not gonna build the next Dropbox, or the next Facebook or Snapchat or whatever it might be," D'Amore admits. And that's fine. WayFounder wasn't conceived with that in mind. Instead, it could be argued that WayFounder's model was developed on the gambit that good ideas have a long tail--the company doesn't need to find a massive breakthrough of an idea to back, but rather a large number of smaller moderately successful ones.

Because, yes, ideas are everywhere. But that doesn't have to mean they're cheap.

You're A Developer. Do Your Kids Have Any Idea What You Actually Do?

0
0

Connie, age 3, sits behind a laptop and addresses her developer Dad. "Sorry Daddy," says Connie, "I'm doing my working. You have to be quiet. Don't talk to me. You stay there and play with my Peppa Pigs. Remember they are mine."

Non-techies often find it difficult to understand what developers do all day. So you can imagine a 4-year-old really has trouble. I spoke to kids in several programmer-families and found that even the older ones had trouble grasping what their parents actually did. The good news is that most of the kids thought that programming was a fun job. The bad news is that they didn't think it was an important one. (At least it's not as important as being Batman.)

Here are the questions we asked, and the responses we got from each child.

What is your Mom/Dad's job?

Linde (age 4): Play games on your iPad! (Linde's Dad actually makes enterprise software.)
Nora (5): You are the boss. You control the computers. And tell the people what to do.
Beorn (4): Her work is to play games and do writing and do everything. And give us lunch.
Beorn's brother, Raziel (6): To do a lot of math and do a lot of science and eat lunch.

What kind of things does he/she make?

Nora (5): You make the computers go bleep bleep so they can talk to each other. (Nora's Dad once used an old modem sound to demonstrate how computers communicate.)

Raziel, whose Mom makes games, thought that making games was very easy on a laptop.

How long would it take you to make a game on a laptop?

Raziel (6): Three minutes and three quarters.

The vast majority of the kids I spoke to thought development was a fun job. However, there were some dissidents.

Is programming a fun job or a boring job?

Raziel (6): "It might be both, which is a straight mouth, not completely happy or sad."
Oliver (9): "A strange job because it's like school but there's no teachers."

The kids were in almost universally agreement that development is not an important job.

Is it an important job or not so important?

Elliot (6): It's kind of important. Because if you want to make robots do things you need to know how to program.
Oliver (9): Not so important. It's not quite as important as the people who arrest all the people who aren't nice or the armies that fighted in World War I and World War II.

What does your Mom/Dad's office look like?

Nora (5): Your office is where Sinterklaas comes! (Sinterklaas, or Saint Nicholas, brings presents to Dutch kids on December 5th; Nora's family lives in the Netherlands.)
Linde (4): It's very quiet. And there are lots of people sitting with their headphones on.
Ella (10): His office looks cool because it has a mini sweet shop and it has a sofa and a TV.
Connie (3): I'm trying to eat this pasta. Connie points to her full mouth.

Notably, not one child said they wanted to be a software developer.

What do you want to be when you grow up?

Linde (4): A dinosaur.
Benny (5): I want to work in the mine. (Benny's Dad explained that he makes a joke about sending him to work down a mine.)
Harvey (5): A mechanic so I can work out what a car would look like inside. Because it would be interesting.
Oliver (9): Archeologist and scientist because I want to become famous. I want to discover a new type of dinosaur. If I become a scientist I would want to try and make morphers so everyone can morph into power rangers.
Beorn (4): When I grow up I want to be Batman!
Beorn's brother Raziel (6): A police officer because a police officer can keep everyone safe.
Beorn (4): And Batman helps the police officers!


Now That Anyone Can Invest, Startups Are Rethinking Investor Marketing

0
0

"I should be able to tell users they could be an investor in this company," says Sandi MacPherson, founder of Quibb, a referral-based network for professionals sharing industry news and commentary. "The people itself make the product what it is."

Like a handful of other daring entrepreneurs, MacPherson did just that earlier this year--soliciting interest on Quibb in a post that would have been illegal before the passage of the Jumpstart Our Business Startups (JOBS) Act in 2012.

"I've always thought of each of you as a 'mini-advisor,' and I'm really looking forward to having Quibb members as investors too," she wrote to her audience of 10,000-plus from her base in California.

Across the country in New York, a new platform for "community funding" was looking at startups like MacPherson's and wondering: What if you could make a public "call for investment" into a widget?


Need Money? Send A Card

Click to expand

Here's what it looks like: A simple, embeddable piece of JavaScript that allows would-be investors to indicate the amount they'd like to invest and hit enter. Vetting and follow-up is handled on the back end.

Quibb is the first startup to use the invest card, which was built by Alphaworks and deployed on April 23, with the goal of raising $100,000 from Quibb members as part of a $750,000 round led by traditional venture firms. The widget is a new use case for the trend toward using small "cards," rather than entire web pages, as the atomic unit of web design.

"Raising capital is a very significant moment in a company's life. We just want to be plumbing so that Quibb can focus on telling their story," says Nick Chirls, CEO of Alphaworks. With Alphaworks tools, he says, "Investors will be able to reserve an allocation like you reserve a restaurant table."

How It Works

For the time being, the Invest Card is a snippet of JavaScript designed for startups to add to the landing page of their choosing. But down the road, as Alphaworks builds out its API, Chirls says that the Invest Card will take on the properties that have made the format so attractive for everything from Google Now's weather and traffic content to Spotify's "Discover" feature.

"These are a tool for a private company to understand investment demand from their community. Those communities live everywhere, and ultimately we see these cards living everywhere," he says, mentioning social networks like Facebook, Pinterest, and Twitter in particular as sites that could integrate Invest Cards, depending on their terms of service.

Since Twitter introduced cards last spring, companies have been experimenting with integrations that take advantage of user information already known to the hosting platform. MailChimp, for example, has developed Lead Generation Cards designed for marketers buying promoted tweets; when a logged-in Twitter user clicks a call to action, the user's email address is automatically added to the relevant MailChimp list. It's not difficult to imagine a future in which an espresso lover could take a small equity stake in his neighborhood coffee shop with a single thumb swipe.

Being Neighborly Pays

Until the last remaining pieces of the JOBS Act go into effect, Quibb (or any other startup raising capital from the "crowd") is technically still limited to engaging with accredited investors. Even with that qualifier, the Quibb community responded to MacPherson's initial announcement en force. It probably didn't hurt that MacPherson has been disarmingly honest about her goals and challenges throughout the life of the network, a posture that has granted her a neighborly relationship with users happy to offer feedback.

"In my typical ghetto fashion--resourceful is a better word--I linked [the post] up to a Google Doc for people who were interested in investing," she says. When 100 members quickly expressed interest, she knew her bootstrapping days would soon be over.

MacPherson says she could have closed the round by relying on the traditional investors that have since signed on--betaworks, Bloomberg Beta, Lightbank, and a set of active Silicon Valley angels. But it seemed natural to seek out a way to include a broader set of backers who "are already sitting at the table and really believe in the long-term vision."

Quibb and other companies will be able to accept non-accredited investor money later this year.

Creating Newbie Angels

One of those community investors will be Vinay Gupta, a London-based entrepreneur who joined the service in its early days after being invited by a friend. "It's a nice way to be connected to something you support," he says.

Gupta says he has donated to projects on Kickstarter, but as an individual has never before taken an equity stake in an early-stage company. His confidence in Quibb has been shaped by his interactions with MacPherson as she evolved the product. "I didn't really get it at first," he says. "We kept in touch intermittently because she's so open to feedback."

Now the value of the site is far more clear: "Because Quibb is a curated network of individuals there's a good discussion," he says. "Not everyone has the time or inclination to write a blog post. It's something between writing a blog and posting a tweet."

Filtering For Quality

That kind of customer engagement is exactly what Alphaworks is looking for as it helps another 10 to 20 companies execute similar campaigns over the next year.

"We're very specifically focused on companies that have passionate communities," says Chirls. "We're simply facilitating the sale of equity from the company to that existing group of people."

Eligible companies must also have an Alphaworks-approved sponsor prepared to lead the round, as a way of preventing Invest Cards from being perceived as a tool of last resort for troubled businesses. When a company closes a round, Alphaworks will package sponsors and community investors into a special purpose vehicle, and then invest the capital via that consolidated entity. Like AngelList, Alphaworks charges a small carry on the company's profits; in the case of Quibb, it will be 3%. (Betaworks, a co-sponsor of the Quibb round, is taking an additional 7%.)

Looking ahead, MacPherson plans to build a product team that can help her solve user experience issues related to engagement and retention. "Quibb has been growing virally, with people bringing in people like themselves. I want to accelerate that," she says.

Thanks to a community invested in that outcome, she won't be doing it alone.

Can A TV Show Get Girls More Into Tech?

0
0

A few weeks ago, the New York Times called it "Technology's Man Problem." Tech outlets across the web have named it "brogramming culture." And tons of organizations tirelessly work to combat it. It is the overwhelming scarcity of women in tech.

The general method to improve female-to-male ratios in tech companies is to attract women to the field early on, by encouraging them to take computer science classes in high school and college. Recently the toys and games industry has targeted the youngest girls, with products like Computer Engineer Barbie and GoldiBlox. And now, a tech executive wants to get the entertainment industry on board.

Anthony Onesto, director of talent development at Razorfish, is finishing up an Indiegogo campaign to get a new children's cartoon off the ground, called Ella the Engineer. The campaign aims to raise $25,000 by April 27th to produce the pilot, aiming for outlets like Nickelodeon and the Disney Channel.

How His Daughters Used Tech

Onesto noticed that his two daughters, aged 11 and six, were incredibly interested in tech. They played on the iPad and computer, but it stopped there. His son, however, enjoyed figuring out how all these devices worked.

"There was never any intrinsic interest into how things work. But my son, who is eight, he was sort of more interested in the engineering behind it. I just found it odd," says Onesto.

He has repeatedly seen the same trend in the tech world, where he recruits talent. "I started looking at some of the applications that were coming in. 'Is this an anomaly? Are there deeper roots? Why aren't there female engineers in this space?'" Onesto asked himself.

Thinking of his daughters, he realized that girls are poorly exposed to the possibilities of a tech career from a young age. "There is no hero, no heroine in their lives, particularly in the media and the shows that they are watching, that has this computer science background," he says.

Onesto decided to start a side project in his non-working hours, with his daughters as inspiration. Not only did Onesto study what they were watching but the main character Ella is also named after his youngest daughter.

With the help of an animator friend, Onesto put together some sketches for the show's concept. Onesto hopes the tech-savvy heroine Ella will change perceptions of coding for all kids at a young age.

But if the campaign does not reach that goal, Onesto will donate all the funds to Girl Develop It, an organization that provides coding training programs to women of all backgrounds.

Does TV Work?

"There aren't that many obvious female hacker roles for women on television," says Angie Chang, director of growth at Hackbright Academy.

But there are smaller roles, mainly in director Joss Whedon's characters. Chang cites Willow, portrayed by Alyson Hannigan in the series Buffy the Vampire Slayer, and Skye in the current series Agents of S.H.I.E.L.D. Both characters are computer hackers who regularly appear in the series, but they are not the main characters.

Chang is convinced that roles like this influence girls. "Television is still prevalent, and we all go to the movies. We all watch TV shows," Chang says. "Roles like this, if there are more of them and more shows, it can definitely encourage girls to pursue engineering," she adds.

"My hope is that someone like Disney or someone on an ABC show can show women in roles where they have a computer, are programming and having a lot of fun building things," Chang says, echoing Onesto's mission with Ella the Engineer.

In general, there is a shortage of women on TV. Research from the Geena Davis Institute on Gender in Media shows that girls watch, on average, seven hours of television per day. But what they see is men consistently outnumbering women by three-to-one, where the woman typically plays an insignificant and somewhat sexualized role.

Telle Whitney, chief executive officer of the Anita Borg Institute, agrees with Chang in that girls are largely influenced by what they see in movies and television. "TV has a huge impact in terms of the role models that they see at that early age," Whitney says.

Role Models At Any Age

When she was in college at Berkeley, Chang started off studying computer science but eventually changed tracks. She found it difficult to shake her imposter syndrome after those first couple of classes and left the department, discouraged.

"In social circles, there's just a lot that needs to be done in supporting girls in being leaders and technologists," says Chang.

Whitney says, "It's really in middle school, or before, that girls who were doing quite as well as boys start losing their interest. There's no question that their surrounding environment is a huge factor. Exposure is important such as playing games to stretch their math and programming skills."

The potential to attract women into tech exists regardless of age. Chang says, "I think it's the entire life cycle that needs to be addressed. When they're young, they can play with computer science Barbie and later play with the myriad iPad apps." She mentions apps that teach kids to code like Hopscotch and Scratch.

But Chang stresses that it is important to continue encouraging women to stay in the field even when they do secure good engineering jobs, later on. "When women can opt out, they will opt out," says Chang.

While a television show might not improve female engineering retention rates in the industry, it might spur more girls to enter the field in the first place. The key is exposure.

Whatever happens with Ella the Engineer, Onesto is not one to push a child into a specific profession, even if he is passionate about the campaign's mission. To truly encourage children to explore careers, he has one piece of advice. "Give them an opportunity. Try to find out what they want to do," he says.

10 Tips To Help Non-Technical Employees Thrive

0
0

Today's fast-paced startups seems to be run by leaders who are more Woz than Steve, but that doesn't mean non-technical people can't thrive in a successful tech company. Here are 10 pointers from CEOs, COOs, and heads of start-up incubators that non-technical people need to know to thrive in the tech industry.

1. Understand The Value Of A Non-Technical Perspective

Movies like David Fincher's The Social Network vaulted the "tech geek" caricature to mythological status as viewers watched Mark Zuckerberg go from insecure coder to billionaire, leading to the wrong assertion that if you can't code you have no business being in tech. But that's not true, according to Charise Flynn, COO of Dwolla, who says the value of a non-technical perspective should not be underestimated.

"Your mind works differently and that is a great thing," says Flynn. "This perspective may create a better understanding of user flows, barriers to entry, and better context for non-technical customers' needs."

It is such an understanding that often makes the difference as to whether a product will be successful or not. After all, the technical people in your organization are using their skills to make something that will be used by "average" people, most of whom are non-technical. You're the liaison between those two groups and if you can't understand the front end of your product, chances are your customers won't either, no matter how clever the code is.

"But don't let your ego stop you from asking questions," Flynn says. "Tech teams have a high BS meter and won't believe you if you just nod and act like you know what's happening. By asking the question you may actually shed light on an area taken for granted."

2. Realize Your Technical Cofounders Are Living In A Waking Dream

Merrick Furst is the founder and director of Georgia Tech's Flashpoint, an incubator that specializes in startup engineering. In his time there he's observed myriad interactions between technical and non-technical people in startups and he says there's something non-technical people need to know.

"Everyone is living in a filter bubble now," Furst says. "The technology to provide specific news and search results to specific segments has been applied first to techies, so you can assume your technical cofounders are especially living in a techie filter bubble. Your technical cofounders surely think the way the world works is consistent with the way TechCrunch, Pando Daily, and The Verge describe it. Of course, the world works nothing like that, at least not for 99.9% of the population."

"You can be confident your company is not in the 0.1%," says Furst. "When your technical cofounders say something that sounds absurd to you, such as, 'This app is just like WhatsApp and if they're worth $19 billion we'll be worth at least a fraction of that,' you should know that everywhere they look they see confirmations of this whacky way of thinking the world works."

As the non-technical person it is your job to recognize this line of faulty thinking and then call them out on it. Doing so will help the project and the company in the long run.

3. Know That Non-Technical People Have Harder Roles To Fill At Startups

"These days product teams usually manage to deliver the products they set out to build. Technical founders work on problems that are often hard, but are most often solvable," Furst says. "Non-technical founders have much harder roles to fill in startups."

Furst's point is that the current chest thumping from developers that code can solve all things is somewhat accurate--if all problems originated from a computer. But startups have to worry about much more than technology, such as finding a way how the company will have a viable business model, for starters. Then there's the problem of whether the company will be able to hire and retain sufficient talent, or finding out how the company will be able to acquire enough capital when it is needed.

"These risks are usually unbounded," Furst says. "These risks usually cannot be ameliorated by technical solutions or product purchases. If you are a non-technical founder with high emotional intelligence it's your job to figure out adaptive ways to mitigate these risks. Techie founders are likely to think your problems are like theirs. They are likely to think that your problems can be set up in some way, and then solved in some way, just like their problems. Wouldn't that be nice?"

4. Become Conversant In Tech-Speak

While non-technical people can thrive in the tech industry, don't think that you can get by with not knowing the language, according to John Fein, managing director of Sprint Accelerator, which is powered by Techstars.

"It's okay if you're a founder who can't write code, but you need to spend time with team members who can," says Fein. "Ask them questions. Lots of questions. Gain a clear understanding about the fundamental technology your product uses. Become close friends with technology road maps, flow charts, and life cycles. You don't need to write code to be tech-fluent when speaking with partners, customers, and investors. And if the conversation gets beyond a level you're comfortable with, have your CTO close by."

Which brings us to...

5. Find A CTO You Can Trust Completely

If you're a non-technical cofounder it's okay if you lack coding skills (as long as your ideas are brilliant). But you're going to need a partner you can trust to help you with the more advanced technical stuff that may not be your forte.

"A non-technical founder relies on their CTO for many things," Fein says. "Perhaps most importantly, they need to wholeheartedly trust their CTO when it comes to how the product is designed, architected, and developed. When the CTO provides a time estimate, the non-technical founder should be secure in knowing it's reasonably accurate. Pushing back on estimates is fine, but in the end the CTO should be seen as a technical extension of their non-technical cofounder. Also, the CTO will need educate the co-founder on the product's technology. This is critical because the founder will often need to articulate this to investors and partners. Having 100% trust in the CTO is essential."

6. Share Your Vision With Your Technical Team

"If you're a non-technical founder, having and communicating a clear vision for your product is often the difference between success and failure," says Fein. "Your team is looking to you when it comes to prioritizing things like key features, functionality, UX, UI, and scalability. Don't assume that just because they're technical they should have the product vision."

Fein says it's imperative non-technical people, especially cofounders, be firm in their vision, and warns that most technical staff will push back at some point--and some will do this continually. He says it's important to answer their challenges at every turn. "Be confident and firm. Your vision will likely change along the way but don't stop communicating it."

7. Make Sure Your Team Shares Your Vision

That's something that Vincent van Leeuwen, founder of financial sentiment analysis startup SNTMNT. SNTMNT uses proprietary algorithms to capture emotions from social media mentions and translate them into how a stock will perform. Van Leeuwen was in the unique position of not being able to code a single line when he founded SNTMNT, but now is a proficient developer himself.

"Many non-technical people are looking for someone to make 'their brilliant idea' work," says Van Leeuwen. "This was a big mistake for my first startup. As a non-techie, I approached technical cofounders at the time to convince them of my idea. I found it doesn't work like that. We ended up with part of a team that believed in a vision and a part that believe in its potential. When potential takes longer than expected--and believe me, it always does--this led to conflicts in our team. We were not aligned on the deeper 'Why' behind what we were doing. We should have spend more time to create a shared vision that all team members believe in and create our startup around that. I believe this is a lot more solid basis which is invaluable when times are getting tough later on."

8. Be Visible

As a high ranking non-technical member of the team, perhaps even its cofounder, you may find that much of your job can be done away from the offices where your coders are slaving away writing the best lines of code the world has ever seen. And though you may be out of the office at lunches or at conferences trying to shore up a network of future clients and partners, Wayne Barz manager of Entrepreneurial Services at Ben Franklin TechVentures says this could lead to deep divisions in your team.

"I've witnessed in several companies how a visionary founder--but not deep technically nor business-wise, for that matter--organized the team in such a way to spend so much time out of the office that the developers were left to themselves. In the recent case, they essentially took charge of the product development process in the vacuum of leadership from the company's CEO, major shareholder and visionary. The founder would simply show up every two weeks or so and complain about the lack of progress. It was terrible."

Barz says he confronted the CEO with this corporate culture issue, only to have the CEO declare that he didn't want to be in the office all day, micromanaging the developers.

"It took several conversations to convince the CEO that he needed to be in the office often--but not to micromanage the developers," Barz says. "Instead, he needed to continue to be visible and lead with his vision of where the company needed to go based on, one, customer feedback and, two, strategic partner feedback he was receiving. Frequent and lucid articulation of what the company is trying to accomplish is critical to ensure that the developers are continuing to follow the vision and the developers are rowing in the same direction with regard to product development ideas and expediency."

9. Provide Young Programmers Proper Incentives

Barz also notes another thing he hears frequently among brilliant, but non-technical cofounders is that they are frustrated their developers aren't working as long or as hard as they are.

"I lose my cool with the founder when they question work ethic in these situations," Barz says. "I come from blue-collar roots and I need to tell these founders that some young programmer working for 2% equity and ramen noodle salary can often be pushed…but not to the same extent that an 80% owner-founder is willing to push himself. Technical people find tremendous intrinsic value in developing elegant solutions to tough technological challenges…but are not unmotivated because they only work a few hours on Sundays. They simply don't stand to reap the same sized rewards as the founder if the work is successful."

"Even worse, some on the technical staff believe that solving that technical problem is the ultimate goal. Non-technical founders need to be able to lead effectively to help make sure everyone understands that cool technical solutions are only a means to the end of building a successful business. Non-technical founders need to help everyone on the team understand that satisfied customers is the ultimate goal and 'using a product wrong' is not the customer's problem, but the company's problem."

10. "I'm Not Technical" Is Not An Acceptable Answer

While the above pointers show that non-technical people do thrive in the tech industry, Dwolla's COO Charise Flynn says those who want to be leaders in the field for a long time should eventually try to learn what they don't know even if they surround themselves with technical masterminds.

"As a leader you have to understand the basics of how all parts of your business work--especially at a startup," says Flynn. "Technology is the foundation of your business and you can't afford to not try and learn. Otherwise you won't be able to ask questions or engage in important discussions that have impact beyond just the technology."

That's something that SNTMNT founder Vincent van Leeuwen heartily agrees with, having been non-technical when he first entered the industry.

"I've seen quite a lot of startups where the founders have lured around for ages to find someone technical to make their idea reality," he says. "This can become a tough and hard process that often involves months, if not years. This is all time you could have spent learning it yourself as well, which I think is time invested a lot better."

"Please note that I'm not saying you should become the CTO of your own company. But too many non-technical founders believe it's impossible for them to pick up coding. I think this is a mistake. Don't be afraid, you can achieve much more than you think. Coding ain't easy, but it's not rocket science either. The fact that you're not that great of a coder can actually be an advantage. It forces you to think learn about your solution. It helps you to stick to the essence, which is invaluable at the early stage of a startup."

The Five Best Libraries For Building Data Visualizations

0
0

An explosion in the number of available data sources and data-processing tools means that more people than ever are jumping into the world of data visualization. But with so much to learn, it can be intimidating to know just where to start. So which library is best, and what advice do the pros have? Read on and find out.

D3

Like telling the history of personal computers without mentioning Steve Jobs, it's impossible to talk about data visualization without talking about D3. Arguably the most dominant and important programming library in the field, D3 (short for Data Driven Documents) is an open source JavaScript library usually used to generate SVG graphics. SVG is a vector image format long supported by web browsers, but also historically underutilized.

D3's popularity owes a lot to the sudden interest in SVG by web designers--largely because vector graphics look superb on the kind of high-resolution screens (think Apple's Retina display), which are becoming increasingly common.

"Let's face it, for SVG-based data visualization, there is no other library that comes even close," says Moritz Stefaner, an independent data visualization authority and owner of Truth & Beauty. "There are also many interesting projects building on top of D3, such as NVD3, which provides ready-made, but very customizable standard chart components--or Crossfilter, an impressive data filtering engine.

Scott Murray, a code artist and author of the book Interactive Data Visualization for the Web, agrees with him. "D3 is extremely powerful, and its strength is that it leverages all that new browsers have to offer," he says. "The flip side of that is that if a browser doesn't support something--like three-dimensional rendering with WebGL--then D3 won't support it either."

While D3 is a generalist library, it's not perfect for everything, however. "The main downside to D3--if you can call it that--is that it doesn't dictate or even recommend any particular visual representation," Murray continues. "It really is a tool for loading data into the browser, and then generating DOM elements based on that data."

Vega

Although D3 is a powerful tool for custom visuals, if you want to make a standard chart without thinking too much about the visual design aspect, a tool like Vega could be for you. As a framework built on top of D3, Vega provides an alternate syntax for defining chart elements. With Vega you can describe data visualizations in a JSON format instead of writing D3/JavaScript code, and then generate interactive views using either HTML5 Canvas or SVG. This greatly simplifies the code involved, so your "time-to-chart" is much shorter--if that's an issue that concerns you. It also makes visualizations far more reusable and shareable, while greatly improving platform flexibility.

"The potential downside is that highly customized visualizations may be more difficult to achieve with Vega or many other frameworks," says Scott Murray. "For non-standard chart types, it may still be best to write D3 from scratch."

Processing

Processing has been around for a few years already. It's easy to get started with--since it can be simply downloaded and installed on any platform. The language itself is also very easy to learn, so that with only one line of code you'll already have something visible on-screen.

"Processing is a programming language, development environment, and online community which makes it a wonderful environment for writing generative, interactive, animated applications," says Benjamin Wiederkehr, partner at design and technology studio Interactive Things, and editor at Datavisualization.ch.

An offshoot of Processing is Processing.js--a sort of sister project that create data visualisations using web standards and minus the need for any plug-ins. "You don't need to know JavaScript in order to get started with Processing, because Processing has its own language," says Netherlands-based data visualization expert Jan Willem Tulp. As the user, you simply write code using the Processing language--include it on your web page, and let Processing.js take care of the rest.

"A negative point might be that once you start doing more complex projects, the IDE is a bit limited," Tulp continues.

With that being said, Processing's innate simplicity (along with its sizable community user base, who are willing to lend a hand if you get stuck) more than makes up for this weakness, and means that Processing is one of the most approachable tools when it comes to data visualization.

Gephi

If both D3 and Processing are general tools that can be applied to a range of different types of data visualization, then Gephi has a more specific purpose. Its the number one free and open source tool for network visualization. Within this, however, is a world of possibilities. Whether you're looking to model the relationship between individuals within a company, or passes during a football game, Gephi can help visualize how two different nodes are connected together.

Like Processing, Gephi is easy to install--and once installed it's straightforward to import your data, clean it up, and start visualizing it. "The network visualizations can [also] be exported and embedded in any web document to be used and share by your audience," says Benjamin Wiederkehr.

Dygraphs

A fast and flexible open source JavaScript charting library, Dygraphs lets you explore and interpret incredibly dense data sets. Unlike Vega, it's highly customizable--but it also has the plus of working in all major browsers. Finally, it's interactive out of the box. What this means is that features like zoom, pan, and mouseover are on by default, while the ability to pinch-to-zoom on mobile devices is simply icing on the cake.

Consider The Fundamentals

Even with suggestions like these, however, the data visualization world can be a daunting one for the newcomer. So what advice do the experts have?

"My first tip would be to learn as much as you can about existing tools which help you create standard charts quickly," says Moritz Stefaner. "Especially at the beginning of a project, it is super-important to generate a lot of charts quickly, in order to explore the scope, depth and 'texture' of the data and find interesting stories to highlight. Personally, I use Tableau and Gephi quite a bit--but there's also CartoDB which is amazing for maps, and the just released RAW, [which is] an amazing open source tools for easily generating interesting graphs."

Also be sure the library you pick is optimized for the information you want to display.

"It's important to look at the format of your data and ask exactly what it is that you're working with," says Scott Murray. "Are you interested in visualizing a time period? Is it categorical data? All of this might influence your decision. Certain libraries like D3 are generalists, which can work with a range of types of data. Others are more more data-type specific, such as Gephi or Sigma.js, which is an open source tool designed for network data visualization. If you know from the beginning what it is that you're working with, it's important to choose the tool that works best with that data."

The Benefits Of Community

For people coming fresh to data visualization, an important consideration might be selecting a library that has an enthusiastic (and helpful!) community attached to it.

"For people just starting out, I'd suggest starting either with Processing or D3," says Jan Willem Tulp. "Both of them have a very large user base and a great number of examples you can learn from."

The online data visualization community can be great for answering questions, but it also serves to highlight one of the central paradoxes at the heart of the subject. Because of the different backgrounds of its members, some data visualizers will approach the field from an aesthetic fine arts perspective, while others might come at it from more of a statistics background. Statisticians may know data, but still be learning the basics of design. Designers may know how to create something that's aesthetically pleasing, but still be learning about statistics.

"It's all about a contract of sorts with your audience," says data visualizer and creative coder Erik Cunningham. "If people are expecting scientific rigor then you need to be very, very careful about the way [you choose to visualize your data]. If someone's expecting something visually spectacular that will blow their socks off--but not be as useful for analysis--that may also be a valid contract."

So long as the data presented is accurate and truthfully visualized, neither approach is wrong--but seeking out different examples will make you examine both your own sensibilities, and those of the audience you're presenting to. It's not just about the trade-off between using an off-the-shelf tool to create a stand visualization, versus using the likes of D3 to create something no one's ever seen before. Data visualization is both an art and a science--and working out that balance for yourself can only make you better.

"I would suggest [users] learn more about visualization itself," says Jan Willem Tulp. "Look at good examples, read books about it, and following some online classes. Because even though the tools help you to create good visualizations, in the end it is you who designs a visualization."

"The tools are in that sense merely a means to an end."

Tough Questions You Face When Building A Homebrew Wearables Kit

0
0

When the duo behind MbientLab tried to make a consumer product, it ended up where a lot of billion-dollar ideas do: on Kickstarter. "It failed miserably," says CTO Matt Baker. "What we learned after many months is building a brand and a consumer product is challenging. Instead, we decided to go back and stick to our guns as engineers," he says. What they came up with next was timed perfectly for a world that is just waking up to the killer potential of wearable computing.

Instead, they built the MetaWear board: a wearable electronics homebrew kit that allows anyone to create a production-ready wearable device prototype "in 30 minutes or less." No programming skills are required. It works out of the box. And it lets people play in Bluetooth-connected products who previously wouldn't have had the technical chops. (And yes, this one is on Kickstarter too.)

The Unexpected Challenges Of Building An Unbuilt Kit

The founders were faced with two big problems: how to decide exactly what to include in the kit, and how to source those components from the most reliable, economical suppliers. If you haven't looked--I hadn't--the number of sensors, buzzers, and batteries on the market is staggering. There are a number of places to source any given components. And with new wearables for tracking, safety, alerts, and identity popping up all the time, new types and iterations of sensors are ubiquitous.

"We took about six months to figure out what to put on the board," says CEO Laura Kassovic. "There's only so much space you have to work with. And a two-dollar-a-pop humidity sensor significantly eats into the margins. We had to figure out: What sensors do 90% of the people want and why?"

Image Courtesy of MbientLab

The pair soon realized that solving this spec would require as much social engineering as engineering of firmware and hardware. It involved meeting with all sorts of customers and competitors; creating detailed spreadsheets of possible sensors, chips and batteries; finding the best overseas vendors; and figuring how to work in China.

"I learned, but a few months ago I really didn't know how to do a proper purchase order," says Kassovic. "Business skills matter."

"We started by taking 50 or so meetings," says Kassovic. That led to the creation of extensive spreadsheets of possible sensors, chips, batteries, trade-offs, and pros and cons of including each. It was eventually whittled down to a short list of must-have components any hardware manufacturer should consider.

Click to expand

The Must-Have Wearable Components

"The first two things that we really knew everyone had in common were the accelerometers and RGB LED," says Kassovic. "We wanted our device to be wearable. Right now there's a lot of fitness trackers, and they all use accelerometer technology so it was a no-brainer for us to put that in. They're really cheap too and you can do lots of cool things. You can detect 3-D motion--XYZ motion and things like free-fall. So that one sensor has a lot of applications. Everyone wanted that."

It was the same for the RGB LED, she explains, because LEDs are the only way to show user feedback. "So we put the cheapest but most luminescent light we could find and we put it right in the middle of our board," she says.

Next, they added a button, "following a discussion with a couple of jewelry designers who were doing a Life Alert type of jewelry," she says. "They noticed that it feels very natural to grab something--the act of pushing a button is very natural--[when] you're in a life critical situation." So a hardware button became a "no-brainer" too.

The other thing that a lot of people wanted was the coin vibrator--you know, the thing that buzzes inside your phone when it's on silent. But as Kassovic explains, this one required trade-offs. "The vibration from a coin motor was the perfect option," she says, "but, well, it's huge, right? We went a little further to say, What is something that makes the trade-off between having this coin vibrator and having a smaller board?" In the end the team gave people the option of putting on the vibrator motors themselves. It comes as part of the kit, but it's not soldered onto the board.

The gyroscope is a good example of something they decided to ditch. "We found that the applications for gyroscopes are really really complicated, like if you are actually going to do very accurate 3-D provisioning measurement algorithms get really complicated," says Kassovic. "And we didn't want to make a complicated product, so we just left out the gyroscope entirely. Plus they were more expensive than the accelerometers."

Image Courtesy of MbientLab

Procurement 101: How To Get The Best Prices And Where

Ultimately, the components that make the grade for wearables are the ones with the broadest applications, smallest size, and the lowest cost. But for the MbientLab team, sourcing was also important.

"If I use the temperature sensor that was made by only one company somewhere in the middle of Taiwan, then I would get in a lot of trouble if they decided to stop making it tomorrow," says Kassovic. "You want to get parts that are readily available, which means they should be made by more than one company. Relying on on one company is generally a poor choice."

So where did they go to find their hardware and how did they go about finding it? "When we source parts for our board like the accelerometer and LED we first do a BOM--bill of materials analysis. This gives us a rough estimate of what the components on the board will cost and it helps us understand what the retail price of the board will be," says Kassovic.

"Generally a lot of people when they're first looking at component prices, they'll go on the major websites like DigiKey and Mouser, and you'll get pretty good approximations. And from there we can only expect the price to go down," says Kassovic. "The best thing you can do is to find the components in China, and you'll probably get the message 'this price possible' and you usually either have something already in your repertoire or you already have the Chinese contact. Or you can start by going on alibaba.com and at least get some names through there, and then you start contacting and calling."

"You try and get the best price possible," says Kassovic, "but you also have to understand that you're going to get a good price if you put in a bulk orders. For example, for our project, our order is 5,000. No matter what, we order at least 5,000 pieces of everything. But it decreases the price quite a bit too."

Image Courtesy of MbientLab

Lessons Learned From Their First Failure

This team's tips for any aspiring Kickstarter startup: develop cultural skills, think beyond Kickstarter, and plan to scale from the beginning.

  1. Have Your Buyers Lined Up:
    "The first lessons we learned: A lot of people create products and they don't know how to sell it. We were those people," says Kassovic."We thought we had a great product, we engineered the crap out of it, we were so proud. And we didn't have a way to sell it. It certainly wasn't Kickstarter," she says. "That showed us everything about what not to do. Before we even created it we should have had either somebody like Walgreens or online like Amazon.com or Think Geek saying 'Yes, we'll sell it.' But we didn't have that. You need to already have somebody who is willing to pay for you to make 1,000 [of your product]. Some sort of customer who says 'Yes, I'm going to put them on my shelf and I'm paying for 100 to 1,000 of them right now.'"
  2. Develop Cultural Skills:
    "Matt's the hardware engineer. I'm the social engineer," says Kassovic. "I send 200 emails a day just to get pricing on batteries and things like that. A lot of people don't understand that's part of the development process. For us it's really easy to create the CAD. But you also have to go and befriend the nice guy from China and then maintain the relationship." According to Baker, "it's really culturally dependent. It depends which country you're going to source from. Some countries expect more interpersonal relationships. Some countries, like the U.S., it's more transactional, it's just a business deal. Even a basic culture book will kind of explain what the business culture is like. China, for example, is the kind of place where you want to get to know the people working in the factory on a personal level," he says. "Because if you reach out to people lower down on the chain who actually do the day-to-day work, when they know you, they're very friendly and very open to telling you about issues."
  3. Think About Scaling From Day 1:
    There is an old British saying--"start as you mean to go on." Startups often think about the early stage of development, but the most successful ones also think like the big shots. They think about how to scale the business and what will be necessary to do that from the very beginning. "Time and investment in relationships can actually be more important at scale," says Baker. "If you eventually hit the 100K quantity mark and you're talking about a lot bigger numbers. An email once in awhile or even Skype... goes a long way," he says. Kassovic adds, "Once you get to a point where you're making things and ordering a quantity of above 5,000, actually it's better for you just to go to frickin' China. Go see the manufacturers and see what they're actually producing. Usually when you're creating something in the tens of thousands, you're just going to have to travel."
Viewing all 36575 articles
Browse latest View live




Latest Images