This is priceless especially considering how much effort goes into writing a book or creating a SaaS product.
Look at what's involved:
* Guest posts / articles to become known as an expert
* Emailing a list of interested parties
* AdWords, preferably in a campaign that can scale
* Twitter and other social media
Learning to write good copy, or finding someone to do it for you, will have an impact on your business. I still get a trickle of traffic (that converts well) from an article I wrote over 6 years ago. I'd much rather spend time adding "one more feature", but a few hours spent writing quality content will have a much larger impact on the bottom line.
update: She bought it last week.
Is this an ebook or in dead tree format?Do you ship internationally?
My single Fusion license has cost me $150 over the last 3 years! Thanks a lot VMware!
But if I'm reading this correctly, they added back in an upgrade discount, which I think was missing with the 4 release.
Edit: here's the proper link http://www.vmware.com/products/fusion/overview.html
If you posted something interesting to games developers I'd wager a lot more Windows PCs and a lot few Macs.
But what kind of victory is it?
I used to wrestle competitively, and I still believe that it's the most underrated sport, partly for the following reason:
Wrestling is undeniably a team sport - matches are scored for the entire team, and the support and camaraderie between teammates is not an empty gesture; I can't imagine a successful team that lacks this. But on the other hand, when you and your opponent are on the mat for your six minutes, you're the only one fighting for your team - all the pressure is on you and you alone.
Most importantly, this makes victories personal. You can win your match even if the team loses, and vice versa. You can lose your match and still help the team win (by keeping the margin of victory low, which impacts the score). You can have a personal triumph, and your teammates will share in that, regardless of the outcome of the team's score.
I know less about the Paralympics than the Special Olympics (and yes, I know they're different), but to me, both always stood out to me as wonderful reminders of the true importance of sportsmanship - not athleticism, but sportsmanship. Part of that is about treating your opponent with respect, which is how we usually hear the word, but part of it is about treating yourself with respect. A dishonorable victory may help your team/country, but for you personally, it's a defeat. On the other hand, being able to overcome a personal struggle, even if you don't "win" the match, qualifies as a victory in my book, and as a spectator, I like being able to celebrate that with the athlete.
Knowing that somebody is artificially harming their body in order to boost some artificial metric (like their race time), or even to gain an edge over their opponent - that's not a good way to treat yourself as an athlete. But that robs me of my vicarious joy as well. And that's a horrible way to treat your teammate.
Does anyone have any insight into how they match competitors to ensure a level playing field? Would someone with a normal heart rate increase ever be matched against someone with a spinal injury preventing normal heart rate increase, which would basically require this kind of pain training?
Can anyone explain why a spinal cord injury would render a human unable to raise their blood pressure through strenuous physical exercise? It doesn't seem to make sense.
Around the same time I was trying to run BeOS as my desktop. I would have liked to have developed for it, but at the time I was just barely grasping Python and C++ with threading really wasn't within reach for me. I'm happy Haiku has been getting press and may try to run it in a VM (haven't had much luck with that in the past) but there was something really liberating about running an OS on the metal that booted in ten seconds. Everything was so snappy. Of course, you couldn't do much with it, but what you could do, you could do really well. :)
Developing on floppy disks also taught me about embedded applications and operating systems. I built some weird stuff. Floppy routers, floppy X11 net terminals, memory-resident openMosix clusters, voice-activated car entertainment and navigation systems, rescue disks, minimal network packet filters, system management daemons, even CGI applications in C (which turns out to be a horrible idea).
The one thing in that list that I'm sad to have missed was minidisc. It still sets off my nastolgia meter.
What about dial-up modems, IRQ settings, and serial ports?
Others with better ideas came along and made the web development experience better, but I agree that IE started it all. I have no idea if the web would be better or worst without IE. I would expect that someone else (Netscape??) would have played the role of IE if it didn't exist and we would be stuck in a similar situation. Remember that in the early 2000s developers that called themselves web developers had ZERO experience.
There weren't any standards back then and since many of us had to start writing intranets and websites, and since you could do more with IE6 we used it.
Is that innovation? Some would say yes. I think that most of these only became innovative once they began to be available to larger audiences, which coincides with the rise of Firefox and later on Chrome. Also, most of the conception of IE as non-innovative and stagnant came from the 5 years gap between IE6 and IE7 (and the added 3 years between IE7 and the real "new IE", IE8), during which Opera and Firefox carried the innovation torch. Most of IE's innovations came when it was fighting the browser wars, pre IE5.
In a parallel universe where microsoft never existed, the people who came up with XMLHttpRequest did their innovative work at Netscape and the web today is light years ahead.
Also the rebels where never able to build something as marvelous as the Death Star :-)
Success, efficiency and morality are three different things. Though many people mix them up all the time. If someone (or something) is efficient and successful that doesn't mean we should overlook the harm (or good) it is doing.
When will we see some actual commercialization of this nano tech? The nano future has been five years away for the last 20 years. Let's make some devices already.
There are no Ruby idioms in use that save code over the Objective-C implementation. There are no blocks, map, inject, hash or array literals, etc.. Sure, you don't have to write a .h file.
The Ruby code here could be translated line-for-line into Objective-C and built with the standard toolchain, without another $200 toolchain. And guess what? You still need to know the Objective-C API to write the app delegate and view controllers.
RubyMotion makes no sense here.
It would be fascinating to see a trendline across batches - do you feel you'd have the data to do that?
What makes subscriptions attractive to businesses, but apparently not to consumers?
Would be interesting to see which business models are most likely to survive.
But I wonder if we can get such information.
Cache-Control: private, max-age=600
There seems to be this idea that angry developers -> no apps -> crappier service -> users leaving, and I just don't see it. Apple has long been screwing developers with their App Store and yet how many thousands are out there coding away at their iPhone games, playing by every rule, however arbitrary, that Apple implements?
Developers aren't going to kill Twitter, but a better service more attractive to users will. I'm of the belief that at this point, Twitter's developed such a huge brand that the lack of app choices alone is nowhere near enough to decrease user engagement. Twitter is constantly on CNN, a myriad of other news channels, and almost every major celebrity tweet I've seen has been made from either the Twitter web interface or their Mac/iOS app.
Users have a much, much larger threshold of "abuse" than many people here seem to believe. Facebook ads, Twitter ads, no third-party Twitter apps, etc, are all very minor annoyances, if you can even call them that, to the majority of users. So while Twitter's new move is certainly frustrating for the developers that helped give them a boost initially, they've certainly got the momentum, brand-recognition, and celebrity engagement to keep them going for a while.
As DCurt points out so eloquently, twitter is largely a one way medium. Celebrities -> everyone else. If you need proof, look at anyone's twitter stream (including your own) and note the ratio of famous people to actual friends. The average person clearly doesn't care about apps or developers or even social networking. They just want to feel a little bit closer to someone who is better known than they are.
The real twitter killing app is whatever attracts celebrities. Anything else might have a long road.
"No one was here when we moved in. Windows were broken, it was dangerous after dark. But the rents were cheap and the architecture awesome so we all moved in.""Soon good coffee shops and restaurants opened. Some buildings were fixed up. It was great!""Then the hipsters/wannabes/yuppies started moving in. They drove up rents and the price of a latte. Now we can't afford to live around here anymore. This SUCKS"
As someone below mentions Twitter is 6 years old. It's outgrown the early wave. Neighborhoods don't usually suddenly collapse back again. But new neighborhoods soon flourish in old rundown neighborhoods. Better to focus on the next neighborhood than lament the march of time.
Facebook users friend their friends AND follow celebrities/brands/products. Facebook also encourages you to share a lot of information about interests and locations. You might also share the same on Twitter, but its not neatly saved as part of your profile.
I'm not sure Facebook will be able to make more money off advertising then Twitter, but if they don't, it wont be because of lack of information about your interests.
What data do you have in Twitter that you wouldn't be prepared to leave behind?
No, it won't kill Twitter, but it will lead to the rising up of something else, akin to how Twitter started to gain traction when they debuted their API.
>The problem with this solution is that Twitter was built >on the backs of the very developers it is now blocking.
I mean, I'm kidding, mostly, but really, what are twitter apps for? slightly easier input from a phone? I thought that most of the value of twitter was that it was 'like a rss aggrigator but easier'
Perhaps it is part of a larger scheme, that leads to monetization?
Having the police force be able to track your every move for any purpose on a whim is by anyone's definition a panopticon. Many people voluntarily allow this type of access to their friends, but it's a different game when you have no choice but to inform the state of your location 24/7. What are you going to do- throw away your phone?
I really hope that Jerry Brown doesn't kill this.
Of course, as ideas go, I allowed myself to think further into the possibilities, and found some interesting avenues.
For instance, why allow the facebooks, twitters, etc to own domain over our content? Let people store their own data, and offer API endpoints giving facebook, twitter, etc access. They essentially become frontends and search engines to our shared content. We get control of our own data (and privacy therein), they get to provide an interface to that data in a way that fits what they're trying to offer their "customers".
And then if you take that even further, why allow anyone control over your data? Why not store all my purchase data and credit info on my own servers, and allow authorized companies access as needed? Census time? Popup shows up on my phone asking if i'd like to allow the government access to some of my data for census - I pick what data is allowed, and it's done.
Electric company's system automatically logs in to get my electric usage. Phone provider does the same. Publishing a book literally allows access by readers to your own servers. Releasing an album - same deal. We still have "stores", but those stores are merely search engines offering a service to both the content creators and consumers.
It went further, and weirder (in interesting ways). I'm not sure such a system would truly be beneficial, but I love the idea of allowing people to Truly Own their own data.
Apologies for the tangent. Good luck to you. I'm a fan of the idea as it's presented and I hope you're successful.
An analogue would be the naming distinction between HTTP, the protocol, and httpd, the first Web server (http://en.wikipedia.org/wiki/CERN_httpd). That naming split made it easier for people to understand what part of the system others were talking about, and helped make it clear that the two pieces were not tightly coupled to each other.
Maybe you're already planning on doing this when you release the server, it's not clear from the web site. If that's the case, feel free to ignore...
The idea seems pretty good. It's just the basics: you follow people and receive their content (text, images, whatever), and people follow you and you share content with them. The most amazing thing is that, just using these simple concepts the possibilities are infinite. As they said, every social network out there can be implemented in this way. ÂżTwitter? It's trivial, just make the format description and you're ready. ÂżFacebook? The only thing you should specify is that the relationships are symmetric (you can follow me only if I decide to follow you too, that is, we are mutual friends).
To me, the idea seems absolutely great. The problem will be execution: what apps are created using this protocol. I have also the doubt if apps will be interoperable. Example: I build a twitter-like app named Foo and another guy builds another twitter-like app named Bar. Both use similar formats, so, can an user using Foo see the contents posted with Bar? I imagine that this will be possible as long as they share the same post format, but I'm not sure.
Anyways, good work. I would really like to see Tent to expand and grow.
Another issue is that this assumes that the web will be the client of choice in the future... with mobile apps being as big as they are in the social space, this seems a bit shortsighted.
Don't get me wrong, I like the idea behind having a "social server", but I don't necessarily think that starting with HTTP is the way to go.
I don't have any particular argument with using JSON for data transfer though... I think that is probably a good choice. Also using SSL for all connections is probably a good call too.
Here is a use case scenario I am imagining. I define two servers for myself: home.me.com and cloud.me.com. Where home.me.com is a dyndns to the freedombox. Dyndyns being unreliable, if a tent msg cannot get to my home server, then the messages are sent to cloud.me.com and then pushed to home.me.com when it comes back online (think POP mail).
The facebook killer then, is a hosted service like cloud.me.com for non-tech people, but a seamless transition to the hosted at home service as soon as you buy a freedombox. This way you have the best of both worlds. Your face in the cloud, and long term storage at home.
Other app wishlist: tent to smtp and smtp to tent adapters for gmail killing
For the me the ultimate social network would be just blogs, RSS and a feed reader, with people either managing the blog themselves or using a third party to do it for them-- the point is it doesn't matter.
The problem is that blogging is complicated, anything with multiple options is complicated, and discovery is complicated. I know where to look to find a friend on facebook, I don't know where to look to find his blog.
I don't have time right now (work) to look into Tent in more detail, but it sounds like it's a definite step in the right direction.
Repo starred, eagerly awaiting runnable stuff.
Question: what features that are taken for granted on today's popular social networks are difficult/impossible in this kind of distributed system? for example, i suspect something like "friend suggestions" might be difficult, since you only have access to a part of the network. Auto-friend tagging in pictures would be tough too. I'm seeing a lot of upsides listed, but there must be some things you just can't do. A candid discussion of the drawbacks would be helpful.
From what I can tell, the idea is to create a standard set of objects and rules for interacting with these objects. Of course that is how protocols tend to look.
What are some of the new objects/concepts proposed by Tent? For example, is there a distinction between "home" and "users" akin to server/client? Are there several types of messages, compared to email? Is there a standard cookie-like object? What is the conceptual model for sharing? Any insight would be appreciated.
> What is wrong with other social services?Centralized Social Service Providers limit what you can share and who you can share with. They only allow users to interact with other users on the same network. Because their products are centralized and maintained by a company, users are left in the cold when the company changes its products or shuts down. There's nothing wrong with a company offering users social services. But users shouldn't be limited by those companies. Imagine if you could only email other customers of your Internet Service Provider. Unfortunately Centralized Social Service Providers have done just that. You can only communicate directly with other users of their closed network.
> If you don't like a bank you can withdraw your money and deposit it somewhere else, including your own home. You could even start a new bank where you and your friends felt safe. You can still pay your bills and maintain your financial relationships, just tell them about your new account. We aren't talking about money. Your data is far more valuableâ€" your family and friends' photos, locations, and private communications. You should be able to store them somewhere you trust, move them when you want, control who can and can't see them.
If a million people decide to 'camp in my tent' (?), my server is suddenly pushing out gigs of data every time I make a post.
It's not an easy problem to solve when it comes to privacy and security: http://www.faqs.org/patents/app/20120110469#b
Eventually to arrive at this: http://myownstream.com
I can swear I saw a section with names on the site, but can't seem to find it now. It looks like it was taken out.
How so ? It looks quite decentralized to me.
The protocol seems to have some fundamental limitations.
For my money I'd rather go with FETHR (see http://dsandler.org/brdfdr/ and this paper: http://dsandler.org/brdfdr/doc/iptps-fethr/) and its implementation - which has code available right now (https://bitbucket.org/dsandler/brdfdr/).
I can't help but read that and think, "terrorists." Then again, there will always be that tradeoff and you are probably on the right side.
I am curious as to how retaining copyright will help them prevent fragmentation?Can they not elect themselves as project leaders of the opensource project and prevent fragmentation?
It's really nice to see people are working on ways to sort of "replace" the current centralized services out there.
Let us hope they are attractive enough to developers and users.
P2P camping site will establish when you are waiting the bus, taking the boring meeting, or camping at the river bank. I tried to use wifi-direct/bluetooth, but I found iPhone and Android system set device default to non-discoverable for security issue. But I do found a lot of Nokia/LG phone in discoverable mode on subway.
I hope the tent will be successful.Be an application to make strangers knowing each other and people to go outdoor.
Also, I really think they're making a mistake by not using secure Websockets for their protocol. Plain HTTP has too much overhead for what needs to be an efficient messaging protocol and the potential need for persistent connections.
Where provider.tld provides specification/api.. like robot.txt/tent.json that would specify actual api endpoints for given user.
The culture of decentralized web doesn't bode well, not enough capitalism, which might in turn effect the quality of the product.
This effectively makes each person an island in h/herself and hence the model of social-web breaks down. It wouldn't work and people know it.
In order to liberate the data, you're throwing the baby out with the bath water.
If humanity overall wins out, the next 20-30 years will seeindustries we can barely imagine grow to maturity. Fromelectric driver-less cars, to new forms of power generation(even fusion), new building methods, new education, andvast mega-cities will spring out of nowhere.
In the West, in the rest of the world, we will see vastdemand for things that are barely off the drawing board. And they will need support industries, innovating widgetsand helpful doo-hickies.
All of which will take specialised knowledge, innovationand investment. Just what VCs are supposed to do.
(PS I strongly suspect Fred Wilson already knows this, isintelligent enough to be hiring clever VCs in India, ChinaSudan, and doing presumably cleverer things than I suggest.
But it annoys me that the article seems mostly - oh no!cloud is cheap, so there are no companies anymore anywhere in the world that need high risk investment. Gaaahh!)
Here is one that is a perfect example: http://www.ted.com/talks/donald_sadoway_the_missing_link_to_...
Edit: added link, minor fixes
That's because it was in the height of the internet bubble. Companies have to work harder and show real revenue. People may not believe it but the recent IPO's have shown this. Tech companies have to show revenue and progress other than traffic .
Companies are springing up that do more than social networking. In the 90's there were many of these crazy ideas but there were no consumers to use them so the valuations were out of whack. I think we're going to see some more ambitious companies coming out. Simple, Square and Uber are the first step.
I used to do Battlebots, Comedy Central had the television rights, at contract renewal time Battlebots and CC disagreed over who brought the most value to the table, they agreed to disagree and both walked away.
Clearly this will kill neither Twitter nor Tumblr but what it does do is put an obvious to fill gap in Tumblr's toolchest. Presumably they could add Identi.ca there where Twitter was, sure you wouldn't find any friends their yet but if Tumblr can convince their users to get an Identi.ca id when they create their Tumblr and then offer a chance to find people with it, it helps more than it hurts.
I wonder if they tried to negotiate behind the scenes, to get Tumblr to pay $$$ for that access, and couldn't come to an agreement. Or if this is part of a negotiating strategy. Charging for third-party access seems logical given that they referred to their follow graph's "great value" when they shut off Instagram. Simply shutting off access at any price, on the other hand, doesn't make sense.
If the tech/vc/science community moved to app.net, the only thing left for me on twitter would be businesses abusing it as a form of RSS, which is by far the easiest content for them to publish to both Twitter and App.net in parallel. So really there are about 5k and maybe up to 50k people who need to move to app.net for me to no longer care about Twitter, and presumably at least 2500 of them have already signed up.
It seems like to get popular you have to be open and then to make money you have to be closed.
I can only hope a mistake was made here as it sounds so absurd.
Nothing wrong with that: getting burned by Twitter as a developer or user is worth other people's attention, as we all try to understand what to make of it.
Instagram, Linkedin, Tumblr...who's next?
They have gone crazy since they want to have their "consistent user experience"...
It's a bit harder for us poor C programmers to come up with a matching term. "C-nic" (rhymes with "scenic") just looks weird, but of course the double meaning would be amusing: "this code doesn't look very C-nic"!
for those without a python interpreter handy:
>>> import thisThe Zen of Python, by Tim Peters
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than right now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Of or resembling an oracle; prophetic.
What's the tech stack for the site? Seems to be loading discussions quite slowly, which is worrying since it doesn't seem particularly busy at the moment. Might want to work on that, since it's a bit distracting (and distracting is the last thing you want when you're trying to get off the ground.)
I hope this takes off. It'd be nice to have a second place to go when the Apple news and Vim/Emacs debates take over the homepage here.
EDIT: Just opened it, have another question: How is it compared to Ask/Show HN?
I'm a pretty fast typist (80-100WPM on TypeRacer, usually) and I really never put much thought into my typing, since it was good enough. But I recently started paying attention to the kinds of mistake I make on Typeracer, and realized that I have certain combinations of keys which I don't make using the "home row" of the keyboard, but rather, move my hands to make. Every time I hit one of these, I have a 50/50 chance of not getting back to the home row correctly, meaning I have a 50/50 chance of throwing off my typing.
And I am a heavy VIM user, by the way, which means I am very used to doing everything from the home row, including every navigation you can think of. I even have AutoHotKey scripts to give me vim-style navigation everywhere in windows, so I never have to move my hands.
Now with this program, I finished running an example and noticed 2 shocking things:
1. There are a lot of keys which I'm not used to typing from the homerow, which happen to show up a lot in regular Python code. For example, periods (.). And underscores. I was used to shifting my hand to type these characters. I don't notice this during every day work, since I'm actually programming, but I did notice this while playing a program specifically designed for typing.
2. At the end of the program, it gives you statistics, and I found out that I was only about 48% effective, meaning 52% of the keystrokes I made were accidents that had to be backspaced out. This is a lot. Part of it is "first time with this program" bias, but it still means I have a long way to go.
Anyway, I recommend running through this program, it will probably teach you a lot.
P.S. Just one bit of constructive criticism: the way the program presents mis-types is a little annoying, and hard to follow. I recommend doing the same as TypeRacer, that is, have the "mistaken" keystrokes be visible somewhere, so the typist is very clear on how many keys he needs to backspace out. This is much closer to how people type in the real world.
I'll tell you how I'd like to use it. This may seem odd, but I'd like to be able to upload code that I'm interested in learning, and then type over it just like in these lessons - but not to speed up my typing, but rather for learning.
Writing is a unique channel for learning new things. (Reading is too, of course, but everyone knows that.) Even if you're merely reproducing keystroke-for-keystroke what someone else wrote, following in someone's footsteps helps the brain absorb new patterns and is particularly good for something one's a beginner at. If what you're copying is the work of a master, then you're absorbing really good patterns. I would totally use a tool like this for that purpose. It's a way of learning with one's hands.
But pure typing efficiency? That's hardly a way to become a better programmer, only a more prolific one, and more code is not what we need in this business.
So basically I wish I could subvert the purpose of your tool and send it off in a new direction. :)
Things I particularly liked: not making me type the indentation (because any sane editor will do that for me), allowing backspace, providing examples in numerous languages.
Things that bugged me (and which only become an issue because the example otherwise proves sufficiently realistic that any remaining differences feel awkward, like an uncanny valley for typing code): showing faded-out code I'm not expected to type and skipping it, not allowing any navigation other than backspace (I frequently "correct" errors by ignoring them until I finish typing what I wanted to type and then going back and correcting them, which means the "collaterally typed before backspacing" characters are not wasted keystrokes), not allowing copy-paste (particularly important for lines like #include or import), not showing incorrect characters I've typed.
Things you probably can't do anything about: typing a file in a more natural order than top-to-bottom (the Haskell exercise starts with a giant export list, and the Python exercise starts with an import list). Normally, you'll extend those as you go, rather than typing them all at once.
I personally would prefer a side-by-side text entry, rather than typing on top of existing code, so it's easy to see progress and mistakes (even if you don't highlight mistakes in the text).
EDIT: It looks like about 50 words per minute, maybe 55, is the max speed you can type and have the cursor actually be visible enough to be a guide of where you are in the text.
Here's a straight-up bug: I had to turn off a Chrome extension (Type Ahead Find) that I use for incremental search. It was intercepting key strokes that were supposed to go to typing.io. That hasn't happened with Ace and other canvas-based text editors. My friend also mentioned that it didn't work with his Danish keyboard.
Beyond these annoyances with the implementation, typing the C code from Redis reinforced how difficult (and frankly infuriating) it is to spontaneously conform to an unfamiliar coding convention. E.g. no spaces in "while(1)" throws me off completely because my brain is thinking "while 1" and my fingers translate that into my customary "while (1)". If you want this web app to be relevant to real-world programming, you need to let people upload their own code samples.
For even punctuation heavy, syntactically gnarly prose, I can average 140+ WPM without much effort. Typing.io put me at around 100 WPM for the first few sections of the C Redis lesson. I'd say I'm good for at least another 15-20 WPM if the environment wasn't so utterly alien.
Regarding indentation: I think you made a reasonable choice in excluding it across the board. Definitely better than requiring it to be typed everywhere. That said, ideally you would require the user to make the keystrokes to un-indent whenever an IDE wouldn't automatically.
Also: Something in Objective-C please. Those square brackets took me a lot of practice to get used to.
But keeping my fingers on the home keys to type has always felt really awkward to me. I tend to position my hands differently depending on the word I'm about to type - in a way that let's me "roll" my fingers along in just the right sequence so it tends to be a series of short bursts where it would seem as if I'm actually just smashing a bunch of keys at once over and over again.
Edit: I just tried type racer and was getting 80+ wpm. /me wonders how people get 140+. :O
What do you mean "access"? Do you mean "authenticate as"? Do you mean "go screw with my email"? I seem to remember that I sometimes see specific access requested, but this one is vague. Possibly this is the result of requesting sign in with no permissions at all.
And besides improving your code-typing speed, it's also a nice way to get a hang of all different languages you might want to delve into. Alternatively, you can also polish your muscle memory on all the thousands of function, classes and method names you can find in your typical language/framework of choice.
This is all bringing back horrible memories of our disastrous demo actually, but very nice otherwise.
My german keyboard didn't work :(
I was considering doing something like this in the terminal, possibly using an adaptation of gtypist. However, I the more I thought about it, I realized that I would be better off writing a module for my everyday text editor, since I would have access to completion, copy/paste, indention, macros, etc.
I don't want to 'talk down' all the work you did with this. I'm really glad you made it and I am going to use it, for sure.
Keep up the great work!
For some reason I can't type the ( symbol. I do have my ( and [ keys swapped but I tried both and neither has the desired effect.
Penalization for adding additional whitespace between identifiers in some situations: "[one,two,three]", for example, I personally like adding a space after the comma and do it automatically.
It is interesting. I wonder if I can learn to make fewer typos.
I think a great place for this to go would be if the code bounced around a bit more. Perhaps, start with what seems like the most commonly used function and write that function header and whole function; then, start writing all of the different subordinate methods you called in this primary method, and so on until the whole class is created. The way it's written write now, in particular for Java, isn't a way that I code and I imagine it's not the way that many people code.
Just my two cents. Otherwise, it's an interesting system so far.
It would be interesting to be able to pick specific coding styles for C
I'm spending too long on this, back to work...
Is it only typing an existing piece of source code? Wouldn't simply coding stuff then be better practice?
You even can't put more line breaks than it is - just type, character by character. If it checked the code in general (e.g. package names typed correctly - but not line breaks and stuff) - I'd totally use it. Not now, though.
I am pretty sure many people do this too: whenever I type braces/brackets/parentheses/[/%$..] I type both open and close, then continue filling in the statement inside the completed pair of open/close. It is a very useful practice especially for languages with a love of open/close symbol pairs. When you try this in your app, the close gets marked as an error, and I couldn't find an easy way out.
edit: the more I use this, the more I find myself really hoping that you're storing all of these stats somewhere. I think that some aggregate analytics of typing accuracy across programming languages would be fascinating.
Maybe when codeacademy students get frustrated they could spend a few minutes doing this.
Other than that, this is freaking rad!
I found it funny that I'm normally a 120-150 WPM typist, but when typing special characters for regex, etc, I hit a patch of molasses.
That being said, this also looks great. Love the idea.
Please find some code that isn't laden heavy with use statements. I'd expect my editor to autocomplete these...
This is still excellent. If these keys worked I would definitely use it.
ETA: looks fine in Chrome though, and I really like this idea :)
Anyway, the cursor occasionally obscures the character and slows you down. Might be worth testing out a fish-eye effect as the cursor scrolls so you clearly know what you need to type.
I don't have anything more specific to add than that it seems to get worse over time.
Otherwise, awesome idea!
One tiny piece of criticism though: when calculating the percentage of unproductive keystrokes, divide by the number of ALL keystrokes, not just the correct ones.
optimizing keyboard layouts?
optimizing character usage for new language or framework development?
advertising open source projects?
One minor thing: practice sessions are called "lessons" but nothing is actually taught.
Bug: Caps Lock key is ignored.Feature Request: c#
Also, I think that games, the little industry that could, is going to totally disrupt and destroy creative media production and consumption (movies/music/tv). Get ready to see an entire industry absolutely crush it.
Human needs - outside of survival - are largely experiences.
Having that great car, going on that ski trip, watching a movie, having a good family, spending time with people we like etc. I'm talking first world here (the vast majority of consumption). The rest of the world will catch up (I'm fully aware of their situation).
Experiences are information and information is cheap, scalable, plentiful and most importantly - limitless. Want a great house? Jack into your own personal VR and have whatever you like. Want to drive a lambo through Monte Carlo in the summer? GTA 15 has got that covered. Want to go out with a French supermodel? Done and done.
If all humans want are experiences then photoreal VR has, or will have, everything you could possibly need (outside of survival). You can create music. You can create movies. You can do that which you cannot do because of scarce resources (I'm ignoring the second law of thermodynamics).
Games are going to lead the charge, and you can already see the beginnings of it with the rise of the Machinima movement and, most importantly, with the recent release of photoreal game engines that support full scale movie production and development (Valve with Source Filmaker and Crytek's Real Time Cinema tech).
The price of making films is going to zero. The price of making novels is going to zero. Music - zero. Flying a jet - zero. Whatever it is that you want - VR can and will do it - and it will begin within this decade. Indeed - with the advent of fusion - energy is going to zero.
What could you achieve if everything was free? What happens when you can divide by zero?
We may very well see the death of physical consumption within this century (outside of fusion supplied energy).
Tell me I'm crazy.
Crytek CryEngine 3: http://www.youtube.com/watch?v=ZqNHJ-ekMR4
Source FilmMaker: http://www.youtube.com/watch?v=Zri1c_If6Ic
DICE FrostBite 2 for Battlefield 3 - "Is it real?": http://www.youtube.com/watch?v=qtMaJf45mQ8
[E3 2012] Watch Dogs: http://www.youtube.com/watch?v=xU7WGAJPRRw
[E3 2012] The Last of Us: http://www.youtube.com/watch?v=kbLOokeC3VU
Red vs. Blue epic fight scene: http://www.youtube.com/watch?v=Ke9wtbzGjCI
GTA4 "Like a G6" music video: http://www.youtube.com/watch?v=W5tuUU5dKb8
All of their products are probably designed in some sort of CAD software, which means they already have the models necessary to do these sort of mockups.
It still must have taken them foresight and money to get from "having models" to "easily arranging and realistically rendering", but now that they are there they can save money, update their catalogs faster, and generate less waste.
Fairly obvious, yet still a cool practice. Wonder how many other companies are doing something similar.
EDIT: Mistake! I did not look at the correct image, mine was similar but different. Disregard the above.
EDIT 2: So this means I am looking at a picture in the catalog that I don't know whether it is real or rendered. But knowing that they new render some images, that the image has no people in it (which is not uncommon in the catalog), and that especially the cupboard doors have some artificial feeling to them, my guess is that "my" image is rendered too. But also, there is a bottle of olive oil on the counter, and its brand is a brand that is common in Sweden, and contains details on the label that seems authentic. So they put much effort into small details in that case.
What a silly comparison. I'm not sure if that's supposed to sound impressive or not, but I would assume the number of bibles being produced isn't that high - everyone that wants one already has one, and it's not like they update it each year!
>> "We don't have to throw away kitchens in the Dumpster after the photo shoot."
That does not speak well for the quality of the furniture.
Bedroom dressers - the bottoms fall out of the drawers and should ideally be glued in place (the instructions don't suggest this). Even with glue, they sag after a year or so.
Kitchenware - their handles on their pots and pans are very heat conductive so make sure you're wearing an oven mitt. Their kitchen block furniture with the thick wood top is well made, though it should be stained and varnished to avoid stains.
Chairs - maybe half the chairs I've gotten from Ikea had poorly drilled screw holes such that the chair couldn't be assembled correctly. Fortunately, the benches are made of such soft pine (read: scratchable) that you can drill your own hole easily.
Sometimes Ikea will eliminate a part (eg: a supporting brace for a dresser) but not redesign the assembly instructions. You might think you're missing that part, when in fact it was omitted deliberately.
They save money where they can by selling you disposable furniture.
In successful acquihires, the acquired teams stay together and work on a new but related project with the additional resources and weight of the big company behind them. When it works, it is much better than just putting random people together since building effective teams is hard and takes time.
Also, keep in mind that acquihires often give the majority of value to the employees in new, unvested stock options vs. cash or vested stock.
Acqui-hires generally have a tension where the founders/investors want money for stock, but the acquirer doesn't really value the stock very highly. If it were up to them, they'd want to dissolve the company and hire the team with big signing bonuses and retention packages.
Practically speaking, what generally happens is that the team gets a "back-loaded" deal where they get a combination of signing bonuses, stock payout, and annual retention packages that start small but get larger every year. So if you quit in the first year, you pretty much get nothing other than a few stock dollars.
Typically an Acquihire is not much more than a way to give your investors back something so you will not give yourself a black eye in the investment community and you'll have the opportunity to raise money again in the future.
In many cases Acquihires are set up by current investors who know you're struggling and looking for a way out. As investors in you they would much rather see something like this than "we're shutting down our product and parting ways" that does no good for anyone.
So while its not always a good investment some acquihires really are, even though the CEO or CTO may leave fairly quickly from a high profile acquihire chances are some members of the team (key members) will stick around for their earn out, enjoy the froyo and build some kickass new products for the company which has given them new found stability.
From an investor perspective Acquihires are just the polite thing to do, One could call it Failing gracefully
I'm guessing that most acquihires deal have a clause preventing you from leaving the company ASAP. Or at least an incentive to make you stay with the company (shares, yearly bonus, etc.). I don't think google will buy a company XM$ and see them leave right after.
Another point is that the acquiring is not "hostile". This is a deal between the startup/team being acquired and the large company so they weighed their options and chose to accept the offer - i.e. they want to work for the big company or are interested in the project they are being offered.
There is a lot of threads here on HN describing that talent is hard to find in technology and it's understandable to acquire a team that already work well together and produced something concrete.
One last thing was a comment by pg here : http://news.ycombinator.com/item?id=4366621 saying that "The article doesn't mention one of the most important reasons companies do HR acquisitions: competition forces them to. If company A offers to acquire a startup and company B merely offers to hire the founders, all other things being equal the founders will take company A's offer."
It's almost certainly a nice tax result for the acquirer, making the acquisition cheaper than hiring the individuals with large cash signing on bonuses.
Can anyone actually point to some successful acquihires?
In straight consultant companies this happens a lot. Only way to grow is to hire more consultants, and it's easier to get more people by aquiring whole companies and lock in the consultants for a couple of years. Good deal for everybody if you don't work yourself to death before cashing out.
A bit of bubbly froth?
It doesn't seem like a great deal to me either, but I suppose it's difficult to tell either way without a concrete way to measure and judge.
That's not to say it isn't a good deal for the founders, but it's certainly not a good deal for many other people. The mindset isn't "let's create 1,000 jobs where there weren't any before," it's "let's make enough money to feel comfortable again."
That said, they can't just leave their acquirer immediately. Typically there's a time _and_ performance-based earn out applied to the terms, so they need to stay (and perform well) at the acquiring company for a set amount of time. Usually two to four years.
What I see in tech startups:Little companies acting as labs for the big companies. In big companies, it's often difficult to develop something breaking new. There is so much infrastructure, culture and history around, that it gets increasingly difficult to think outside the box and to keep up with the latest trends. This were startups step in. With the startup, they often acquire a very specialized piece of technology and know-how. Then comes step two: Looking for ways to integrate the new toys into the productline.
Other than that, acquihired employees aren't necessarily interested in being hired the other way. When inside a company, you have to climb the hierarchy ladder, you won't be hired after college to just be the leader of a big team, or the CEO of the company. For the people not interested in climbing the ladder, building a startup and being acquihired is a very good way of hacking the ladder and landing right on top, or close to it. I recommend pg's essay on this ( http://www.paulgraham.com/hiring.html ) This, together with the fact you have already mentioned that these acquihired employees have proven the ability to create something, reduce the employer's risk on selecting the wrong person to do the job, making acquihiring a good investment opportunity.