text:
The computer used removable media: 12" removable "Diablo" 5MB hard drive platters. One had four user basic on it, one had single user basic, and one was locked away with the software for grading students.
Memory management was primitive: BASIC ran in RAM, and if you used single user basic, you had 4x the RAM and therefore room for 4x the program. When swapping drives, you had to boot the computer by toggling the CPU's three instructions into the front panel.
I wrote a massive Star Trek adventure game in single user basic. Friends would actually creep into the lab overnight so they could play by themselves.
I have exactly this memory as well.
My first computer was a Compaq Deskpro Portable. It had a 5.25" floppy drive and a 40 MB hard disk. It was an embarrassment of riches - how could you ever fill up 40 whole megabytes? Between that and my custom AUTOEXEC.BAT file, I was set.
As it happens, I still have most of the files I created on that original computer, and can even run my old BASIC programs using DOSBox on Ubuntu. I had to copy the files via 5.25" floppies to another computer that had a 5.25" and a 3.5" floppy drive; and from there on 3.5" floppies to yet another computer that had a 3.5" floppy drive and a CD drive.
Then I wrote a Forth operating system.
This was on a 16KB machine (I had the expansion pack) with a 1.7MHz Z80.
Fun days. I still have the machine and its complete circuit diagram. I should get it out again, but then again, I don't have time:
But, most of the time I think it's because people simply think that this is the way things are supposed to be. One example is how long it took before Auto-ISO became an option on DSLRs.
In all cases there are opportunities for a startup to be disruptive. So, keep looking for those C-drives!
1. Insert source disk
2. Type copy a:\. b:\
3. The system will read a chunk of data from a:\ then say:
Please insert disk B: and press any key to continue...
4. You'd swap the disks, press a key, and the system will write the chunk of data and say
Please insert disk A: and press any key to continue...
This would go on and on and on...
Anyone remembers installing Win95 and the number of 1.44MB 3.5" floppies it came on? 26! And once you got to about disk no. 13 it would start asking you to insert seemingly random disk numbers every minute or so... Or how about getting to disk number 17 and being told that the installation is corrupt, start over.... errrr.......
Ah, those were the days.
There aren't too many areas where one generation translates to a million-fold improvement.
If you've only started using Windows based computers within the last five years then the missing A and B drives may seem mysterious. Floppy drives started disappearing from first laptops and then desktop machines in the early 2000s.
One day you'll have to take your kids to a museum to show them a CRT monitor (and they will have to take their kids to a museum to show them an incandescent light bulb).
This video made me feel tremendously old.
The effect this question has on people is because they remember some information which most of the users today don't know as they have never used that technology. So what technology of today will become so obsolete that you would remember your age?
A: - floppy
F: - External Storage
Cannot believe I still remember my old favorite: http://en.wikipedia.org/wiki/ARJ
Screw pkzip. It always asked me to insert the first disk, again, last.
And tape drives transfer speeds were 300? baud. Most people can read way faster and some can type faster.
I have many memories of working late in school labs, feeling that awful feeling when the sky outside gets light as it literally dawns on you you've been there all night, making backups on multiple floppy disks as you go...Bathed in the fluorescents
2K RAM, 3 MHZ CPU (much faster than the .9 MHZ of my TRS-80 Color Computer. Yes, it didn't even have 1 MHZ).
And yes, I did a lot of programming on that keyboard.
I remember back in the old days when I would bring up anything tech I got called a nerd and/or geek and it was the kind stuff you dont talk to normal people about.
I got made fun of by people for talking about IRC channels and being on internet boards, back when they were command line.
The weirdest change for me as been the acceptance of knowing about technology. Today if you dont know what the interent or a computer is you are consider old and out of date. Back then if you knew that stuff you were an outcast.
Yet we had to put up with this inferior technology for so long. I remember people were still running around with floppy disks at high school in the late 90s/early 00s (it was easily 20 year old technology by that time) and I started using the internet for transferring my files. So much that I have never purchased a USB memory device.
I'm old enough to remember the 8" floppy disk that was invented by IBM to ... wait for it ... boot System 360! I think they had CE (customer engineer, i.e., repair guy) diagnostics, firmware, etc. on them, as the little bit I actually saw one being used, it was during maintenance.
Nobody who asks this question would need to go to a StackOverflow site to get it answered.
MIT diffuses my cynicism with steps like this. In an academic system I do not trust there are clearly intelligent like minded people enabled to make a difference. After years of dreading my involvement with academia, movements like this make me want to wander back in with an open mind.
If anyone involved with MIT OpenCourseWare ever reads this please know that I respect and appreciate what you have done for people thirsty for knowledge. Thank you from the bottom of my heart.
In the same vein as MIT, UC Berkeley has many lectures on availble on Youtube. [http://www.youtube.com/user/UCBerkeley]
I'm currently having fun with their introduction to programming that uses Python: http://ocw.mit.edu/courses/electrical-engineering-and-comput.... (Get the lectures on iTunes U.)
Granted, I don't know if that's the best gateway drug to programming, but it has the irrefutable advantage of assignments that apply the information. You always feel morose watching OCW lectures where the lecturer talks about an assignment that you'd love to do.
If you want to learn Scheme (Lisp), I highly recommend CS61A [2]
[1] http://news.ycombinator.com/item?id=2103949
[2] http://www-inst.eecs.berkeley.edu/~cs61a/su10/ Lectures on iTunesU
Once GPS gets sub-meter accuracy, then we should start worrying.
Make a structure of actual use, like a tiny bridge across a moat that could hold people. The magnets have got to go.
Let's imagine they get the machines scaled to the point when they could build an actual habitable structure, and that they sort the power concerns that I suspect would make it insurmountably uneconomic.
Now, imagine a squad of sufficiently large and powerful helicopters buzzing away all day next to your office. How many people are going to be OK with that?
There are many complex processes being performed at construction sites. Many steps take highly optimized machines to perform robotically but that a single human can do just by changing tools.
Because of these processes, automating the entire construction process would be very expensive to do right at the site.
All parts would have be modularized so they could be snapped together. Or robots will have to be able to change tools. Or parts will have to be moved from robot to robot, with as much work being done before parts are actually brought to the site.
Either way, it will be interesting to see how it works out.
They'd need two batteries in a drone to do that of course, or perhaps some other robot could execute the battery swap.
- Jeff Skilling, former president of Enron
Contrast that with the Facebook approach:
"Resourcing for projects is purely voluntary.
-a PM lobbies group of engineers, tries to get them excited about their ideas.
-Engineers decide which ones sound interesting to work on.
-Engineer talks to their manager, says "I'd like to work on these 5 things this week."
-Engineering Manager mostly leaves engineers' preferences alone, may sometimes ask that certain tasks get done first.
-Engineers handle entire feature themselves �" front end javascript, backend database code, and everything in between. If they want help from a Designer (there are a limited staff of dedicated designers available), they need to get a Designer interested enough in their project to take it on. Same for Architect help. But in general, expectation is that engineers will handle everything they need themselves."
Good god. Does this strike anyone else as disturbing? Surely every single piece of work being taken on should have the USERS needs and concerns as top priority and not sexy stuff that can attract sufficient engineering interest?
What if there's important problems that are really bothering lots of users and a PM can't get anybody interested (or no-one decides to take on the problem?)
Here's a complaint from a guy about maintaining a personal page and fan page:
Some quotes from that piece:
"As a programmer myself, I can't fathom that it would take much technical and design effort to address these issues, and Facebook is flooded with complaints from users begging them to fix these headaches. From my perspective as a Facebook user with a very active personal page and fan page, I can't help but get the impression that Facebook deliberately wants to make some basic admin tasks (like blocking spammers) difficult or impossible in order to compel you to spend more time on the site. There doesn't seem to be any other logical reason for these glaring design flaws that I can comprehend, other than pure incompetence, and based on their success in other areas, it seems more likely that these choices are deliberate."
"Surely someone on their team is aware of all the complaints and requests to fix the broken elements. So why do they seem to ignore what appear to be such glaring (and fixable) problems?"
"I thought that Facebook would be an interesting place to share inspirational messages and build more community around growth-oriented people. But the current implementation of Facebook can't handle the way I've been trying to use it without creating more headaches than it's worth, and their momentum appears to be headed in the wrong direction for me to expect that these problems would be fixed anytime soon."
"So I've crossed the threshold where Facebook's value isn't worth the hassle to use it. I concluded that the best choice was to simply drop the service altogether and invest my time elsewhere."
Who will take on these issues?
Again from the Malcom Gladwell article linked above:
"You might expect a C.E.O. to say that if a business unit can't attract customers very easily that's a good sign it's a business the company shouldn't be in. A company's business is supposed to be shaped in the direction that its managers find most profitable. But at Enron the needs of the customers and the shareholders were secondary to the needs of its stars."
Facebook should wake up in my opinion. They did really well to reach 600m users (or whatever the figure is now) but if they want to stay there they should get their priorities straight.
EDIT: Grammar
Part of the reason I never made a real FB account was my general feeling in 2005 that securing a MySQL/PHP site against internal abuse takes incredible effort, and they wouldn't ever bother to do it. According to this article, that's likely true. And the "everybody can modify anything anytime" philosophy with little QA explains why, after 6 years, FB is still a gaping maw of security holes.
I have a hard time believing many aren't abusing this, just out of human nature ("did she mention me to any of her friends?").
Bull. Shit. This one line makes me think that this entire post is completely hear-say. A 500 person engineering team that writes bug-free code on a system as a large as facebook? Give me a break.
We also have very small QA team. They work to make sure that the buttons that make us money aren't screwed up.
The key to this sort of uber-agile development is that you have very, very talented engineers, a release process flexible enough to deal with errors, and a management that buys into moving so fast that mistakes will happen.
I have to say that it is simultaneously exhilarating, humbling and a little terrifying to work like this. Luckily, mostly the first two.
Scary, even for a developer like myself.
Hasn't everyone read, "Microsoft Secrets" ~ http://www.amazon.com/MICROSOFT-SECRETS-Powerful-Software-Te...
...because what the author describes is pretty much the MS dev process (cf CH4 Defining products and development processes). Reading JOS, "How to be a program manager" also shows how MS PM's worked in conjunction with developers ~ http://www.joelonsoftware.com/items/2009/03/09.html MS sure knows/knew a thing or two about organising large groups of people to produce software & output product in a corporate setting.
>I'm fascinated by the way Facebook operates. It's a very unique environment, not easily replicated (nor would their system work for all companies, even if they tried). These are notes gathered from talking with many friends at Facebook about how the company develops and release software.
So I'd take whatever is written here with a grain of salt. My communication with friends working at Facebook yielded similar thoughts but nothing that comes to what's written that implies a callous recklessness. I know for a fact that they have some code-review tools and blocking tests.
Anyway, my point is that the author doesn't seem to be embedded too deeply in the engineering at Facebook and his notes are, while not outright false, definitely misleading.
re: surprise at lack of QA or automated unit tests �" "most engineers are capable of writing bug-free code. it's just that they don't have an incentive to do so at most companies. when there's a QA department, it's easy to just throw it over to them to find the errors."
It does explain how facebook ships with bad documentation etc. -- well, now we have enough knowledge to know how to compete with it :)
Kasparov often remarked how a good process is more important than the actual participants. An average human and pretty good computer with a great system won the championship against great computers and against great grandmasters.
Google believes in this, and their products are very well engineered, with full documentation, videos etc. (although admittedly, many haven't taken off). Yahoo definitely understands this. But these are the same companies that are losing to facebook because of social.
If google and yahoo understood the dynamics of social, we would all be better off.
"resourcing for projects is purely voluntary."
As someone who works for an online gambling company where we are not even allowed to use the product we are building (legal/trust issues i guess), it would _rock_ to be able to have this kind of impact on features
This sounds like Mark Zuckerberg living his 'revenge of the nerds' dream in his Facebook nirvana! It certainly doesn't sound like good management practice!
As someone who develops on top of the Facebook Platform, I'm not surprised. Huge, obvious bugs that affect many applications are released far too often.
I really like this part. Many new staffs prefer to come in and do the "sexy" enhancements instead of the "mundane" support. This leads to their lack of understanding of the system and poor design. I had always believe that new starters should do support work for a while to gain an understanding of the overall system.
Oh my other comment was just meant in jest. But thanks for downvoting it and killing all the worthless and meaningless HN karma points i had accrued!
The damage will be in PR. He's an almost unrivalled corporate showman, and few companies are as associated with their CEO as Apple. Whoever gives keynotes in the future would be wise to develop their own style rather than copy his. There may also be collateral damage in ruthlessness and vision - we constantly hear how he drives new products, and kills off "failures" early. However, the more I read recent interviews with anonymous Apple employees, the more I see he seems to have reformed the company in his image. It's impossible to gauge how much actual presence he's had over the last few years, and it seems quite likely the press have over-egged his effect. As long as his successor is not a radical corporate reformer, and is willing for a few years to be seen as an "Heir to Jobs", it seems likely to me things will roll on quite successfully.
I suspect Jobs will "retire" either this or next year. When they replace him, if they don't promote from within, then any CEO should: absolutely not engage in a massive expansion/race to the bottom; introduce change slowly rather than play with Apple like a new toy and; rely on the corporate team that's been built until they deeply understand what's working and what's not.
In many ways, Job's eventual departure (hopefully based on choice, rather than necessity) could be good for Apple. I firmly believe a little of his control freak nature could be sanded off the company to their advantage. They should drop the "Control for control's sake" direction they've been taking recently, and stay focused on the core corporate ethics that have bought them success - a high degree of perfectionism, technical risk taking, user focused design through everything, and a great marketing team. It won't be exactly the Apple of today, but given some of the…hostile decisions over the last 3 years, it might actually be an improvement.
On the other hand, generational turnover is very, very important. Maybe at some point, even a terrific figure like Jobs may be as bad as it is good for Apple. For instance, how much big role he played in the culture of closure of Apple?
So it is even possible that an Apple without Jobs could be, all in all, a better company.
It takes a lot of drive to do that kind of work while having such major medical troubles. I really believe that what drives him is the desire to give the next great thing to users, and to take Apple to new heights. Money can't be the motivator - he's got plenty, and it's probably not at the top of his list anyway, during such life and death struggles.
Speaking for myself - I recently had some surgery which was nowhere near as complicated and life-threatening as what he went through - I know I wouldn't have the drive and commitment to return to work in such a big way, especially if my family was already taken care of financially. So - thanks to Steve Jobs and best wishes for his health, and no, I don't think it's right to wish for him to return to work soon - he will decide how to spend his energy, and he's already spent more of it at Apple than anybody had the right to ask.
Hopefully he will return because without him Apple really is not the same company, despite their ability to succesfully execute on their planned projects. A visionary has to plan for the future, and Steve Jobs isn't just the CEO of Apple, but kind of a new type of media mogul. He seat on Disneys board surely holds sway, and Apple is going to need his influence to further it's push into TV, movies and publications - he is the man, for example, Murdoch or Igor are going to want to speak to.
I do wish him a speedy recovery.
Maybe this is not the best place to ask, but does anyone know about Steve's eating habits? I know he was a frutarian at a certain point and then changed to fish/vegan (particularly sushi), but would really like to know more.
The reason is that I am in need of drastic personal changes regarding diet/exercise and thus trying to incorporate a vegan/vegetarian diet, which has been very difficult for me. I know that cancer is a multi-factorial disease, but it still scares me that some apparently very healthy individuals (such as Jobs or Linda McCartney) have such tough health problems. I feel very well when I manage to stick to a vegan diet, but would like to know more about longterm effects.
Anyway, I wish him well.
I think he embodies a unique ability to see the heart of a new technology or aspect of technology and to focus in on the critical part or parts, ruthlessly getting to what he sees. It's not just a design sense (like Ive), nor a good sense of what consumers really "want." And there are plenty of downsides to this unique gift. (We can all cite plenty of examples.)
I don't think we've seen that from anyone else, even at Apple, over the years, so there's no real replacement possible.
I think it's even spilled over to Pixar's success, which is pretty amazing.
(Maybe Alan Kay rivals it, in a different world.)
Best of luck to him and his family.
> It's called bait and switch.
Not really. If anything, it's the eventual use of market power for profiteering.
> But it would become another closed de facto standard, just like IE6.
Huh? IE6 is a browser not a standard.
> This is comparing apples and oranges. Flash is a plugin,
This is splitting hairs and a straw man. The user does not care or typically doesn't differentiate between something that's part of the browser and something that is a bundled plug-in. The user experience is basically the same.
So any argument using a criteria about building in a proprietary and closed standard to the browser versus bundling a proprietary and closed plug-in is at somewhere between fatuous and disingenuous.
> If you want to do any kind of video on the web, you don't have a choice. Flash is needed.
WRONG. Bizarrely wrong in fact since we're arguing about the HTML5 container for video and supported codecs. Flash isn't involved. This isn't vapourware either. Modern browsers already support it.
> it is much more likely that an open format will prevail in the end.
If there are two dominant standards, sites will be faced with a choice: double-encode everything or pick one. Many have already picked H.264. What's more likely? Double-encoding or simply delivering H.264 to Chrome via a Flash (rather than HTML5) container?
If anything, this move prolongs the existence of Flash.
> Just because a format is widespread offline does not mean that it is suitable for use on the web.
Is the author really suggesting H.264 a) isn't widespread on the Web and/or b) isn't suitable for use on the Web? Really?
> In other words: The processing will always be there, and instead of re-processing to a slightly more compressed H.264 file for online play, it can be converted to an open format.
If the author thinks this move will displace H.264 they are sadly mistaken. For one, the license fees for using H.264 are negligible for the largest players. For another, there is an enormous installed base of devices with hardware H.264 decoding. Hundreds of millions in fact, most notably the various Apple iDevices.
These provide a compelling use for the continued use of H.264 in the long term.
> As already explained, videos are typically re-encoded or processed in some way anyway.
Yes but double the processing and double the storage are real issues.
> Notice the word "plugin". It means that we're basically removing HTML5 video, and returning to plugins. All the benefits of native video disappear just like that
What benefits are those exactly? At least for now the user experience, HTML5 video is still playing catch up to Flash video in terms of user experience.
> If I am not mistaken, the share of open standards based browsers is growing at the expense of Internet Explorer.
Worst case for IE is still about ~50%. That still makes it the single largest browser. Chrome's share exceeds Safari's (AFAIK) but the latter is still significant and I can't imagine it getting WebM support anytime soon. Apple are very much wedded to H.264 support by virtue of their devices if nothing else (anecdote: I played 6 hours of video on a plane on my iPad using 10% of the battery).
> it is H.264 which takes away choice.
By definition, not giving someone a choice takes away choices.
All of the arguments for this move seem to be focused on the long term. That's fine but in the short term it will unarguably cause users and sites headaches.
> I also find it puzzling that Google is being accused of giving users fewer choices, while Microsoft and Apple aren't even mentioned.
Hold yourself to a higher standard (and, more importantly, preach those standards to others) and you will be the recipient of greater scrutiny.
At best, the author's argument descends to "two wrongs make a right".
Note: I'm saying arguing in favour of Flash. In fact, I consider the lack of Flash on my iDevices to be a feature rather than a limitation.
Ironically this moves will likely prolong Flash and slow the adoption of HTML5 as a result.
This statement "Indeed, most sites offer different bandwidth options and video sizes. They are already converting the video!" shows a pretty clear lack of understanding on how most site's encoding processes work (you generally encode once at different bitrates, not once at one and others as you need them)
Err, Microsoft has already declared that WebM will be supported if a compatible plugin codec is installed on the machine. They just don't want patent trolls (successfully) suing them for shipping hundreds of WebM decoders. After all, Google is not indemnifying users of WebM from patents(like Android OEMs like HTC were left on their own when Apple decided to sued) like Microsoft does with Windows Phone 7.
Opera is being disingenuous by spinning this as if Microsoft blocks WebM from being used in IE9 for the HTML5 video tag.
The only difference this makes is that this cements the split instead of everybody expecting Firefox and Opera to give up and adopt H.264. If you were willing to ship just H.264 and flash fallback for Firefox/Opera, why wouldn't you be willing to ship H.264 and flash fallback for Chrome?
Result: all the open source people are happy, and we all get to use the higher quality codec in any application we can imagine. And we also get to keep our devices with their battery efficient dedicated h.264-decompression chips.
Once devices start coming with native WebM acceleration, it won't be an issue. Given that Android is so popular and Google is looking to abandon H.264, it's inevitable that hardware acceleration will come to phones, probably in conjunction with H.264 acceleration (just like H.264 and H.263 right now) At that point, any ARM platform with a H.264 acceleration will include a WebM acceleration, and it would be more than trivial for Apple/Microsoft/whoever to implement WebM in their mobile browsers.
A more interesting day will be when Google says "Android 3.x phones must have WebM acceleration"
As of now h264 is on the same level as ActiveX and VBScript so you might as well ask for Chrome to support those, too.
Granted, in this respect WebM is not perfect either. But at least WebM is meets the criteria to be a part of the W3C spec without modification whereas currently h264 does not.
tl;dr Don't complain if Chrome uses WebM for <video>. My browser will only support Dirac and we're both right.
I can't see why this won't be turned into a lawsuit w.r.t. intentional degradation of performance/battery life.
"I like the functionality, but it doesn't follow best practices."
or "Things Real People Don't Say About Science"
"These findings are compelling, but I'd like to see some corroborating studies in peer reviewed journals".
Any consumer facing industry is going to have a world of jargon that is inaccessible or ridiculous to the layperson. And similarly, these industries can support those who want to participate but don't have anything to add.
I don't see this as a jab at advertsising (although, it very well may have been intended as such) I see it as a jab at wannabes.
If you still don't believe me, try reading tech job postings...
[edit: typo]
> I love the copy, but it feels off brand ...
I remember the first time I saw a McPizza ad. It talked about how if you didn't like one kind, then you could get a different one. And it felt really strange.
Later I figured it out. Until then, McDonald's ads had always maintained the premise that everyone likes everything they sell.
> If only this solution was more scalable...
I am constantly annoyed at the idea that "scalable" is a meaningless word. Nonsense, it is a precise, well-defined, and useful term. True, it does get misused by marketing people. But the fact is that anyone who is purchasing a large system of any sort, if they know what they're doing, will have some concern for scalability.
> Finally, a place for me to share MY story!
Isn't this a huge reason for people going to blogging platforms?
On the other hand:
> This website's music is great - turn it up!
Definitely. No one has ever said that, ever, in the history of the web.
This is why as an app developer I am deeply sceptical about Google's model. Okay, so the consumer saves a buck, but then you chip away at their goodwill every time you show an ad. And note, when you're showing an ad, to make it effective you have to make it intrusive, you either have to lock them out of the free functionality for a while or you need to make it eye-catching.
I don't know anyone that said "I'm so glad Google bought Youtube and plastered ads all over the videos".
People hate advertising so much they will go out of their way to avoid it.
In economic terms, as an app developer the way I see it is that free+ads is really just burning up my user's good will to enrich Google. The more I annoy my customers like this, the less likely they are to recommend my app. To the extent that it is less than a zero-sum game... it's not just an even 50:50 trade-off between for pay and ad-supported.
This website feels like a bunch of immature complaints and useless mockery.
The funniest part is that most of this stuff actually works: on message copy, brand structure (http://bit.ly/fmyD7T), the word "solution" has sold hardware for 3 decades, buzzwords like "social currency" causing enough confusion to get your attention, focusing on intent increasing conversions/revenue, font size increasing conversions, branded apps (REI ski report, Oakley surf report), website users love introspection, stock photos increasing conversion, focusing on benefits (value prop).
By far the best.
It reminds me to this youtube video somebody posted recently on Twitter: http://www.youtube.com/watch?v=dRDhx8Lo37E It's totally viral!
No, I'm not related to the video or whoever made it.
If you've never seen an Adam Curtis documentary before, this is a good one to start with. His style and delivery is unique among documentary filmmakers and is definitely worth a watch.
"Women Laughing Alone With Salad"
Yep. The year of spray-on liquid glass on the desktop!
( Previously: http://news.ycombinator.com/item?id=1092741 )
I dont get it, I ahve a glass sink and counter in my bathroom at home. I still have to clean them.
Every mirror I have ever had has been glass - I still windex them.
All my drinks at home are served to me in nothing but the finest crystal - I still have my help clean them.
How can you use water to clean it if it repels water?
Likely why the revolution has not arrived.
Instead, I suggest using GRUB to boot your kernel image. It leaves you in 32-bit mode and a relatively sane state. It's not hard to write a loader file (in assembly) which contains the multiboot header and an entry point. Presumably you'll want to set up a basic C runtime environment and call your C "main" function.
It's a bit of a niche inside a niche: it explains how to set things up to write an OS in D. This was extracted from the OS that my friends and I started a while ago, that's now two of theirs' PhD research:
I used my diploma thesis as an excuse to build a toy OS on top of a L4 (L4Ka::Pistachio) microkernel. It provides the basics, incl. IPC and VM building blocks, and a straightforward C/C++ API, and you can do the rest (there's also a number of things built on top of it that you could mix'n'match - i just implemented most of my userspace stuff because that was what I was interested in).
Some links (haven't been in touch for a few years, I don't know how up to date they are):
L4Ka project: http://os.ibds.kit.edu/1953.php
OKL3 (successor to Pistachio, as far as I can tell): http://wiki.ok-labs.com/
Iguana, a set of components to be (re)used on top of L4:
Misc L4 resources: http://www.l4hq.org/projects/os/
If anyone's interested, I could try to find my old code and put it on GitHub (it's a combination of MIT and GPL licenced things).
He includes a lot of details, and seems to try to do things "The Right Way" as much as possible. (Not that I am a good person to judge that)
OSKit aims to be a set of libraries that dramatically lower the barrier to entry on OS development.
What you should do instead is write the kernel and just load it with GRUB. It allows you to immediately jump into the interesting stuff that makes your kernel unique, makes it easy to test on real hardware without getting a second machine, and makes it possible to dual-boot with it if/when you get that far.
I haven't tried this, but it might be fun to write a kernel for some other system- some ARM device, maybe. Any kind of bootloader would be infinitely less encumbered with x86's layer upon layer of compatibility stuff.
Not all the people I socialize with are into computers. Most aren't. You can't make all your friends in your own industry. I don't care if a person is a man or a woman, unless there are seriously extenuating circumstance I won't work or socialize with them if their assholes. The problem is that in geek circles there is a heavy social penalty of advocating that someone be ostracized for behaving like an asshole, everyone has to be included no matter how much no one else wants to hang out with them.
There are a lot of anti-social retards in tech regardless of gender. I'm quite happy with it as there are lots of people willing to hire devs who are willing to not be condescending and have some semblance of adherence to social norms. As the OP pointed out quite accurately in their post 'I realized he was just an asshole who probably wouldn't get too far in life anyways.'
Many people are hardwired to respect the opinion of anyone who forcefully and confidently expresses it. It's a two way street though, want people to think you know software engineering or any other topic? Just say something reasonably intelligent in a forceful and confident way, also if someone else has said it that they respect mention that person as having saying it. Most of the debates in software engineering are subjective in nature as much as everyone involved in the decision likes to claim otherwise.
If you know your rhetoric you'll have no problem intellectually disarming most people in CS. CS geeks think they only pay attention to logos but realistically there are a lot of CS decisions made based on ethos and pathos. I'll probably be down modded for saying this but the appeal of open source is based largely in ethos and pathos, and not logos.
I'd settle for more people in tech who can write working code with out being an asshole regardless of gender.
From a standard point about good parenting, nearly all the girls with good parenting had mommies who were happy being mommies.
For more, I draw from
E. Fromm, 'The Art of Loving'.
Deborah Tannen, 'You Just Don't Understand: Women and Men in Conversation'.
So, I continue:
Way before age 5, the little girls realize that they are small versions of Mommy and NOT Daddy. They know in absolute terms that they are a GIRL and NOT a BOY.
Since their mommy was happy being a mommy, the little girls want to be like Mommy and on the 'mommy track'.
By about age 18 months, little girls are already masters at eliciting positive emotions from adults, MUCH better than boys. The girls are also MUCH better at reading emotions than boys. Facial expressions and eye contact are part of how the girls read and elicit emotions; other ways are to 'act' (they are MUCH better at acting than the boys) cute, meek, and sweet and to be pretty. Since being pretty lets them do better eliciting positive emotions, they love pretty dresses with ruffles and ribbons. So, they are in a 'virtuous circle': They act sweet, elicit positive emotions in an adult, e.g., father, grandfather, uncle, get a gift of a pretty dress, wear the dress, elicit even more positive emotions, get even more pretty dresses, white bedroom furniture, patent leather shoes, cute stuffed animals, etc.
Having to act like a boy or be treated like a boy, instead of like a girl, would be terrifying to them.
So, in their first years, such little girls, to be on the 'mommy track' want to play with dolls and not Erector sets, want to work at being pretty and not how to hot rod a car, want to learn how to bake a cake and not how to plug together a SATA RAID array.
Give such a girl a toy truck and she will know instantly that the toy is 'for boys' and will avoid it as a big threat.
Generally, from a little after birth and for nearly all their lives, human females are MUCH more emotional than human males. So, they pay a LOT of attention to emotions, both theirs and others'.
One of a human female's strongest emotions is to get security from membership in, and praise, acceptance, and approval from, groups, especially groups of females about their own age. That is, they are 'herd animals'. Gossip? It's how they make connections with others in the herd. Why do they like cell phones so much? For more gossip. Why pay so much attention to fashion? To 'fit in' with the herd.
In such a herd, in most respects the females try hard to be like the 'average' of the herd and not to stand out or look different. [An exception is when a female wants to lead her herd, e.g., go to Clicker, follow the biographies, get the one for the Astors, and look at Ms. Astor and her herd of 400.] Well, as long as human females with good parenting are on the 'mommy track', and the human race will be nearly dead otherwise, the 'average' of the herd will emphasize the 'mommy track', dolls, looking pretty, cakes, and clothes and not Erector sets, hot rodding cars, or building RAID arrays.
When it comes to a college major, any human female 18 months or older will recognize in a milli, micro, nano second that her herd believes that mathematics, physical science, engineering, and computer science are subjects for boys and NOT girls. Instead the girl subjects are English literature, French, music, acting, 'communications', sociology, psychology, nursing, maybe accounting, and K-12 education. By college the girls have been working 24 x 7 for about 16 years to fit in with the herd of girls, and their chances of leaving the herd in college to major in computer science are slim to none.
Don't expect this situation to change easily or soon: Mother Nature was there LONG before computer science, and, as we know, "It's not nice to try to fool Mother Nature.". Or, to get girls to major in computer science, "You are dealing with forces you cannot possibly understand.". Having women pursuing computer careers give girls in middle school lectures on computer careers will stick like water on a duck's back -- not a chance. Nearly all the girls will just conclude that at most such careers are for girls who are not doing well fitting into the herd of girls, are not very good socially, don't get invited to the more desirable parties, don't get the good dates, are not very pretty, and are not in line to be good as wives and mommies. By middle school, the girls have already received oceans of influences about 'female roles', and changing the directions these girls have selected and pursued so strongly for so long is hopeless.
Besides, 'middle school' is an especially hopeless time: The girls have just recently entered puberty, just got reminded in overwhelmingly strong and unambiguous terms that they are now young women, have received a lot of plain talk from their mothers, grandmothers, aunts, and older sisters about the birds and the bees, in their gossip with their herd members have been discussing the birds and bees with great intensity, already have a good woman's figure or nearly so, really, are well on their way to, in another year or so, being the most attractive physically they will ever be and know it, notice men of their age up to age 80 or so looking at them as women, and are in no mood to consider being 'more like boys'. Middle school is about the worst possible time to try to get the girls to fight Mother Nature. Suggestions of such lectures are 'clueless' in grand terms.
So, a typical scenario is a boy in middle school who is really excited because he just understood how an automobile differential (TCP part of TCP/IP, binary search, virtual memory, etc.) works and with great excitement tries to explain it to a girl his age at, say, lunch, and we have a strict dichotomy: The boy is totally clueless that the girl couldn't be less interested. The girl sees right away that she couldn't be less interested, not to offend the boy unduly pretends to be a little interested, and sees in clear terms that the boy is totally clueless at perceiving her lack of interest. She concludes that he is so clueless he is really easy to manipulate (a fact she suspects could be useful and saves for later). The boy doesn't understand the girl, and the girl regards the boy, and soon, all boys less then 2-6 years older than she, as at least 'socially' immature and, really, just immature. She wants nothing to do with such 'children' (she already understands that a woman needs a strong man) and will concentrate on boys 2-6, maybe 8 or 10, years older than she is. She has a point: She was likely more mature socially at age six than he will be at age 16.
Look, it's WAY too easy to fail to understand: So, we can just assume a simplistic 'rational' model. In this model, sure, we can teach 2 + 3 = 5 and (2 / 3) / ( 5 / 4 ) = 8 / 15, and both the boys and the girls can learn, although typically the girls will do better on tests in such things than the boys. So, we entertain that the boys and girls can exercise all their 'rational' abilities and, thus, can learn and do well with anything their rational abilities permit. Nonsense. Naive, clueless nonsense. Instead, Mother Nature says that in addition to rational abilities are emotions and commonly has the emotions overwhelm the rational abilities.
Net, such a simplistic rational model is clueless, even dangerous, nonsense. Give a girl of 4 a toy truck and take away her dolls in pretty dresses, and she will cry, and the crying will be heartrending to any adults around who will quickly swap back the truck and the dolls. It's no different at age 13 in middle school or 18 in college.
Actually, there can be a reason for a girl in college to take some courses in computer science: Look for a husband!
It may be that in college girls of Asian descent are more willing to pursue math, physical science, etc. than are girls of Western European descent.
In addition to being totally messed up politically, it's really harmful to your self-esteem if you think that you are being given special treatment to satisfy someone else's political correctness quota. Not to mention that eager men (with the best of intentions, no doubt) over-compensating can lead to "othering", that feeling that everyone is going overboard making you so welcomed that you kind of want to barf.
My current speculation is that for most girls, it's actually their parents that instill a nagging sense of doubt regarding what they are "supposed" to consider good career options. Therefore, I think the key is to reach young minds.
Girl coders: go speak at public schools or high schools today!
The key to getting more females in CS is to expose them to programming in middle school or earlier.
Jean put her finger on why recruiting females for CS at the college level is so difficult: if they are starting programming in college (or even high school) when most of the class has been programming for years, they are way behind on the learning curve and have a daunting task to catch up.
That is a problem for perhaps 90%+ of Googlers, regardless of their gender.
At his confirmation hearing, when Greenspan was asked why Townsend-Greenspan employed so many women (> 50%, compared to about 5% in finance at the time), he replied that since he valued women as much as men, but other firms didn't, he could get better work for the same money by hiring women. Are there any software companies doing the same thing today, and if not, why not?
The women on the panel, who were all Westerners, couldn't even comment on that. They were just plain speechless, and rightly so, because most of their arguments involving bullying boys, mother nature, and other standard points were pretty much refuted by the simple fact that there already exist places in the world where this topic is not even an issue. And it's not the ones you would usually relate to human progress.
They can say something so simple as "Oh don't you know that command?" but in an inadvertently condescending voice that makes you feel like you're the only person who doesn't know it. As someone just testing out the CS waters, that type of experience in every class can be very daunting.
In general, computer science tends to be a major where people go into college with a lot of prior-knowledge and I have seen this discourage many people from majoring in it.
One day, a top male student came into the lab. A female student was writing some code.
Guy: "What are you working on."
Girl: "Code for the new project."
Guy: "What are you writing it in."
Girl: "Perl."
Guy: "Perl!? (long pause) now that's a man's language."
Girl: "Rolls her eyes... shut-up dumb ass."
That's an example of the banter. The girls wrote just as much code and did all the things the guys did. The only major difference was numbers. There were 6 guys for every 1 girl.
Edit: spelling
CS / software engineering is an underpaid ghetto, and as outsourcing continues, will remain so.
Perhaps I should have pointed out Philip Greenspun's take: http://philip.greenspun.com/careers/acm-women-in-computing
I wonder how much of the gender discrepancy in CS can be objectively attributed to personality differences. Populations who participate in certain logical activities have rare personality traits (http://news.ycombinator.com/item?id=946249, http://www.teamliquid.net/forum/viewmessage.php?topic_id=112...) which are far more common in men than women.
If this is the case, is it possible that direct attempts to "increase the number of women in CS" are misguided?
Funnily none of the guys getting B's or C's had that psychological problem.
They can say something so simple as "Oh don't you know that command?" but in an inadvertently condescending voice
"Condescending voice" is a matter of perception.
It's quite possible that these engineers were totally ok that she did not know some stuff.
Still it's possible that females are more sensitive to [imaginary] condescending tone, so they shy away from the field.
At Clojure Conj I think there were 0 women (other than guardians of minors) out of 200 people. On programming mailing lists I almost never see female names.
I think CS graduation rates might be much higher for a number of reasons. I think females have higher college graduation rates overall in the US, they may be more likely to switch fields and pursue a graduate degree, to switch out of programming after graduating, and in a field like programming where many are self-taught they may be less likely to learn programming out of the classroom.
On her point about being at a disadvantage compared to the other students since she had low experience with computer science (having only taken classes in high school). In my point of view, I think she had sufficient exposure to compsci. I didn't get into computer science, or even know of its existence, until my 2nd year in university.
I definitely do think personality has an effect on the experience. The author of the article, I think, took comments and retorts too seriously or negatively. In addition, I think she uses her gender as a weakness but rather it has no effect on her ability at all. Though at least she recognized the asshole soon after his outburst.
In my experience, I don't see a decline of females in computer science, rather it is a increase. I have passed by the portraits of graduated students in my hallways and definitely there are way more females than in the previous years. Matter of fact, it was almost a 1:5 ratio of females:males (may not be super accurate).
I. discriminatory or abusive behavior towards members of the opposite sex
II. prejudice or discrimination based on sex; especially: discrimination against women
III. attitudes or behavior based on traditional stereotypes of sexual roles
IV. Attitudes, conditions, or behaviors that promote stereotyping of social roles based on gender.
The sexist remark in II is quite common. In some dictionaries the word "sexism" is itself defined in sexist terms: "sexist - a man with a chauvinistic belief in the inferiority of women". It may be warranted by the attitude's prevalence; it is sexist nonetheless because it promotes stereotyping.
Definition IV is probably the most enlightening of the bunch. One valid yet unpopular answer to the question "why so few female software engineers" is that most parents provide a sexist (IV) upbringing. Given the standard attitudes (gender identification), conditions (girl's toy collection), and behaviors (mom's occupation), the odds are stacked against a female becoming a software engineer even before she enters the first grade. These things change but it takes generations.
Inspecting my own behavior as a male software engineer, I would find myself guilty of several of the attitudes and behaviors mentioned in the article. My first hope is that I do not discriminate by gender (I'm a jerk to men and women equally) and my second hope is that I can be less of a jerk to everyone.
So, is there a concise explanation somewhere of what makes git better than subversion?
So far I only heared that git does not handle large binary files well and supposedly it is good to keep your large source tree (larger than the Linux-kernel !?) into many smaller git-repositories.
And you have to learn something new and unlearn bad habbits.
The no-easy-GUI-problem has been solved, right ?
> We need to build x, y and z, ASAP. Before you've figured out distribution? What evidence do you have that x, y and z, once built, will make customer acquisition any easier?
It feels like he's saying, "Whoah, let's not just go off half-cocked." And when trying to convinces us to spend the our own time on graphic design It feels like he's saying, "Easy, there. It's OK to take longer on something you're not as good at," which is counter to the conventional wisdom around here.
What's interesting, is the advice is still paired with, "Iterate, iterate, iterate." Feels like the message is less "Hurry" and more "Thoughful iteration." This was refreshing.
I have a lot of respect for entreprenuers that can just jump in and make things work like that.
One could argue that for many products, traction starts with interaction design. Good interaction design involves finding out how your user thinks about a problem and then finding a solution that naturally fits inside the user's mental model. Wireframes, etc, all flow from that core revelation. To do this, sometimes you need to interview (potential) customers, study their habits, and really understand their needs.
So it should go without saying that founders should be doing interaction design, but this is first time I've ever seen it put plainly.
The opposite situation, where founders don't have a deep sense of their users' needs and habits, is a recipe for failure.
PS Just noticed this was not posted by the author, but the comment still applies
Which is why hiring is an art, why companies have hiring managers on which a great deal of responsibility is put on, and why I ultimately have to partially agree with Gabriel. Sometimes not hiring is a good decision.
I've got two other people working with me now, and I hope to add at least two more this year. We're a heck of a good team, with our bases covered in hardware, software development, consumer electronics, home media systems, Windows and Linux network administration ... there are much fewer things that we can't handle between the three of us, versus any one of us alone.
1) Iterate faster. If you have 2-3 devs working on something vs 1, then you can figure out more quickly if your hypotheses are correct or not.
2) Certain markets (like ours in the non-profit space) require that you have more direct interaction w/ those you are trying to reach. 1 person might have worked well for DDG, that isn't applicable to everyone
If you have specific, defined tasks, it's better to get a contractor. For example, for my current project, I hired a sysadmin for about a week to set up a new infrastructure, configuring puppet and so on. Sure, I could have done it myself, but that would have taken a lot of time and probably wouldn't have been done as well (I'm more dev than admin).
This is great advice. Not only because it is free you up from hiring but design/ui/ux is integral to most web apps and should have a frequent focus of the founder.
Granted, a freelancer doing a security audit might work out for that. But restarting servers, solving network and OS issues? Is there some kind of sysadmin "call center"? And would I trust them with my private data?
Other than that, the article speaks to my bootstrappy heart.
A business organization might be a saleable asset even with a failed product. A solo founder with a failed product is just broke.
While probably not the best strategy, building an attractive organization may reduce risk by making the worst case scenario a talent acquisition instead of a liquidation. Personally, I'm a bit of a misanthrope so I lean towards Weinberg's position.
At what point are those nations going to lose enough patience to point out the unbelievable corruption, cynicism, and mind-bending incompetence with which the law is administered in the first place?
This was always included on the first day of any patent class in law school.
How much worse is it going to get before it actually gets better?
Good find. For certain values of "good".
There were only 20 claims.
Perhaps, to people who program in higher languages this is not evident, but old assembly programmers know this stuff well. Even for the newer ASM programmers, we had Fravia+ (may he rest in peace) to teach us the ropes on reverse engineering and unprotecting 'nasty' code.
And those students of Fravia+ know something well: if it is viewable, executable, listenable on a device you own, you can do anything to it. He recommends taking what you would have put in for protections and make your program better by that much. Or prepare to protect the hell out of it (and release every day, munging the exe).
It wouldn't be any more responsible/ethical/useful of me to post a "I Can Crack Your Non-Mac App With Just A Copy Of IDA Pro and HexRays" tutorial. I could show you how I can press 'F5' and decompile your code back to surprisingly readable pseudo-C, but that's not going to help you secure your application, it's just patting myself on the back and showing you how cool I am.
On top of that, the author is still flogging the PT_DENY_ATTACH horse, despite the fact that it's been documented over, and over, and over again as trivial to bypass. PT_DENY_ATTACH was added to meet the minimal contractual requirements Apple had to movie studios and record companies by preventing users from attaching a debugger to DVD Player and iTunes. It's not a real security solution. There's a simple open source kext (that was first implemented for Mac OS X 10.3!) that simply disables it across the board:
But seriously - this was interesting in and of itself, for those who don't know the tools.
The whole concept of copy protection and registration is a war that can't be won. Denying unregistered people proper updates seems to me, form experience,to be the most effective deterrent - I don't like to apply updates if I'm not sure if it will cripple my app because I used a weird serial # - and nobody likes to run a "keygen" these days because who knows what it does.
In the end - all software is piratable, and usually by those who won't pay for it anyway.
With the declining price of software and mass-markets like the app-store, more people will pay. (I like a certain piece of SSH terminal software for windows - but I don't use it, because I'll be damned if I'm going to pay over a hundred bucks a seat for it - it's not THAT much better than the free alternatives. If they brought that price down to something reasonable, I'd use it all over)
Another fan of your writings. I like the occasional quote you throw in there. However:
I don't agree with the way you phrased your headings. Verging on linkbait, even.
RCE is a hobby of mine and I crack all sorts of shit; it's fun and challenging. I know quite a few people who do.
This is the first time I have read such a blunt "I can crack your..."/"How to stop me" approach. It sounded very arrogant at first. No one else that I know bothers with this direct attitude. I am sure Mac devs are more than aware (Anticipating an article on this as a followup to your post).
"[...] but implementing a bare minimum of security will weed out 99% of amateurs. [...]"
I am not sure where you pulled that number from but it's false. RCE is not as difficult as you make it out to be, and amateurs can overcome the usual barriers quickly. Communities thrive on teaching amateurs the art, and they pick up these skills very quickly. I taught a few.
//do nothing
ptrace(PT_DENY_ATTACH, 0, 0, 0);
I really have a hard time taking advice on copy protection from someone who doesn't known about ifndef.
Furthermore, PT_DENY_ATTACH won't help because any cracker worth is salt will just open the binary with an hex editor and remove the call to ptrace(). The other two tips to prevent cracking are, at best, as useless as this one.
And just in case you're wondering, those three methods are equally useless on iOS.
Edit: Actually, they're not very good at it, but this still won't slow them down much.
People will buy from the App Store because they want the protection it provides and the convenience. They know when they download your app from the app store that it's not a virus, the install will be one click simple, and Apple has hand reviewed and approved the app.
I think the Mac App Store protection is designed to be just enough to stop Average Joe from copying it onto a usb stick and giving it to his friend. In the end that's really what you want.
$ DYLD_INSERT_LIBRARIES=/path/to/your/Subclassedlibrary.dylib arch -i386 /Applications/OriginalApp.app/Contents/MacOS/OriginalApp &
And on a sidenote, I thought it was funny to see him refer to something as 'badly spelt' - I thought that 'rye' remark was a bit 'corny' (rimshot :-)
But the people on the other side feel the same way, there are more of them, and in reality, they're not actually hurting your business as badly as your delusions tell you they are - none of them were ever going to buy your shit anyway.
Add features, improve your design, fix bugs, or tweak your shitty description and screen shots in the app store (which, in my experience, will affect sales for most apps more than the first three factors put together). Literally any time that you devote to copy protection is wasted, unless you're Angry Birds (and even then I'm not sure) you're not reaching anywhere near a high enough percentage of the people that would happily pay for your product to worry about the ones that would rather just take it.
One is it just builds the binary, runs it through SHA1 (or whatever), and stores that digest somewhere in the installation directory. But what's stopping attackers from just changing the digest? They have access to the application, so they can know exactly how to generate the digest; all they have to do is run the bundled digest function in gdb, copy the output, and then search for it in the installation. Even if the author tried some sort of obfustication (xor, deflate, reverse, etc), such attempts would show up in the binary and could be trivially duplicated.
A second is that the digest is somehow pre-computed for a binary before it's built, then included in the binary itself. But I don't see how this is possible with secure digests. And if the method is simple enough that it's worth using for typical iOS applications, what prevents an attacker from pre-computing a digest for the cracked version?
Next time you buy a DRM-ed book from Amazon.com, or watch a film you can not make a copy of, you can contemplate that the protection there is much better than in some Mac app.
Would that make you happier as a user ?
The way to solve this problem is to spend more time on adding more features into the frequently released newer versions of software. Cracking all the same basic reg code would get boring for a few-dollar app.
And moreover, we have a link on our home page that says if you email us, we will give you our apps for free. Some people take advantage of this offer, but the vast majority of users do not.
Specifically, the PT_DENY_ATTACH thing should be possible to be, itself, denied with labrea (though in practice, I've run into runtime linker problems with that exact call that I haven't quite figured out, but I haven't put much work into it).
That price usually is between $0.99 and $9.99 and thank Apple for showing us that lesson.
Of course, such an app could still be cracked -- as could any app... because all you have to do is
1) purchase a legitimate copy and enter a fake name
2) take a snapshot of a working, unlocked app
3) remove all the code that cripples that state
The only way to really prevent cracking of apps that run locally is either challenge-response dongles or requiring people to provide a strongly verified identity in order to unlock the app (that way the cracker can't distribute the app without compromising the identity of the original buyer). And that is just too inconvenient for the actual buyers. Once again, security at the price of convenience.
Not really necessary - https://github.com/mxcl/homebrew/wiki/installation#sudo
"The explanation he gives is simple: when someone is building a house, the more tools they have, the better off they are. But when someone is looking for something, the more space they have to explore, the worse off they are"
and the original article (on Magic:The Gathering design, but with useful information - scroll down to the "Design Tool #1: Restrictions" header where he discusses this point):
Though that was for school, where the point is often to create things that are neither novel nor profitable.
Star Wars Budget: $13M
Return of the Jedi Budget: $32M
I'm not joking when I say that juxtaposition influenced the way I think about life.
Now the idea almost seems like a trivial commonplace to me. Everyone from John Paul Sartre to David Heinemeier Hansson has written about it.
Many film cameras used to be sold with only a fixed 50mm or a 35mm lens. The restriction forced people to think about what was in or outside the field of vision. Today's cameras that have 10x zooms do not force the same consideration, and I suggest that amateur photography has suffered as a result.
A friend of mine is a house-painter by trade, and has set himself the restriction to never use a brush when he paints a canvas. This forces him to consider what he really wants and how he can get there, instead of simply smearing paint around the canvas until he gets bored.
We have too many choices these days. Getting rid of a few can make results much more deliberate.
I'm struggling with this right now. When building web applications, there are some constraints that are interesting and useful ("the user should be able to do everything without logging in") that might result in great stuff being built, and others ("it has to use this particular technology stack or this particular algorithm") that are less obviously beneficial to the creative process.
Arbitrary restrictions can also inspire creativity and create focus (timeboxing, learning to say no), but creating restrictions can be an opportunity to frame the problem in a purposeful way.
While restrictions can encourage innovation, sometimes they really do just get in the way.
Be dismissive without rolling your eyes...
Ready? Go!
Dancho Danchev, an expert on cybersecurity, is placed in a psychiatric hospital in Bulgaria. The information was confirmed by two sources of "Dnevnik", although the hospital refused to comment.
[...] according to reliable source of Dnevnik he was placed in a Bulgarian psychiatric hospital since December 11.
I tried to search for this list online but I couldn't find it (maybe it is not available yet). The article doesn't say anything about the official situation. It will be great if anyone can provide some official information.
So the question is, who has the key? It seems like if anyone has it, Ryan Naraine should. But if he did, his post would be quite different.
There's no evidence to suggest otherwise at this point in time. The pictures don't suggest anything to me and he's perfectly capable of not answering the phone, email, or instant messages.
I hope he is ok, both physically and mentally.
I shook his hand and he introduced himself as getting an interview slot too. Naturally we conferred and compared notes. Mine was something weird, a scheduling software--we haven't decided yet. His was a photo blog. Well like a photo blog, but easier, the kicker is you only manage it through email.
Oh, I said. That sounds... interesting. Since I was young that was go-to answer for any pitch. The less he explained the more compelling it was. Blogging for your grandma, blogging that anyone can do, blogging that's accessible. I remember asking how long he's been working on it, he said for a few months. I smiled and said he's probably going to get funded.
I didn't, it was my fifth try and became my last.
Throughout the years Posterous' engineering skills, design skills, and marketing skills have made the platform really awesome. Reading his blog, learning his thought process, and seeing the passion he puts into his work, it's inspiring. Very inspiring.
Blogging for grandmas is such a good idea, it's carved a great niche amongst giants WordPress, Blogger, and Tubmlr, and it's growing as a company.
Our career paths took really drastic divergence but seeing what you've done in the past three years is one of the examples of the immense potential working in our little crazy world.
Congrats and good luck.
I feel like a band i really like was in the studio working on a new album, and a songwriter just left.
I guess i was waiting for another shoe to drop in terms of the realization of the Posterous vision.
Anyway... congrats to Garry. I saw his TWIST interview a while ago, and thought he seemed really nice and had really interesting ideas.
See also Jason Putorti's gig (now over) at Bessemer:
I was also surprised at how quickly I got a response via a customer service request. Nice.
Congrats to Garry Tan - I always equated him to Posterous since I saw him on This Week in Startups. Hope to hear more about his newest endeavors.
I'm glad you'll be able to provide high impact work to many startups.
It's a really great logo, definitely "with the times" with the bold, sharp lines and flat colors. I'm not sure I'll be putting it on any websites, since I don't think most users care or understand markup versioning, but grats to w3c for doing something that doesn't look like it came out of a committee of phds and marketroids.
It doesn't look like something someone hired from outside did, and the HTML5 logo looks like the header on a Tutsplus vector tutorial.
Most of the different icons have very poor symbolic value, and look really unintelligible.
They could do a lot worse, so that's always something.
Think about its purpose; it needs to work with a huge range of styles, each of which will have specific and varied audiences.
The choices made (collegiate typeface / bright orange) are quite bold; I don't think it lends itself to sympathetically supporting a broad range of differing styles of design.
Also, when this is used, it's likely to be quite small - the gap between the tail of the '5' and its upper curve is slight. I think it will have a tendency to resemble a '6' at smaller resolutions.
Maybe I'm being too negative, but on top of all this I don't think it looks visually appealing or balanced. I don't think the proportions (forced perspective / surrounding gap vs. typeface weight) are pleasing to look at.
But then again, maybe once we see it everywhere, it's ubiquity will create new associations and familiarity will win out.
Not yet. W3C introduced this logo in January 2011 with the goal of building community support. W3C has not yet taken it up in any official capacity. If, as W3C hopes, the community embraces the logo, W3C will adopt it as its own official logo for HTML5 in the first quarter of 2011."
I could also question the need of... 2^8 variations of the same logo (the "build a logo" thingy).
EDIT: fixed typo
The logo treatments and website seem like a contrived effort design a logo to whatever the designers believe is the "HTML5 Design Aesthetic." Sure, rich content and all, but HTML5 (and related technologies, like this logo is supposed to imply) shouldn't be represented by over contemporary design.
Interestingly, the logo is not the "official" logo. On paper, it's just the community logo - and it will only officially be adopted if it gets enough grassroots support.
Is this W3C's "official" logo for HTML5?
Not yet. W3C introduced this logo in January 2011 with the goal of building community support. W3C has not yet taken it up in any official capacity. If, as W3C hopes, the community embraces the logo, W3C will adopt it as its own official logo for HTML5 in the first quarter of 2011.
Sort of like dog whistle politics but used for good :)
That, and learning that Netflix on the PS3 is a HTML5/WebKit implementation. I'm sold.
He now gets help with the business and support side of running a company but only one of the developers he hired is working on the game with him together. The other developer is getting their next game up and running.
What's also interesting is that Notch does not want to run the business, at least not at the scale at which it is now. He hired people to do that for him.
Eh, I would not say that. Minecraft is not seriously competing with AAA big-budget titles like God of War. They have completely different audiences. Yes, GoW is extraordinarily expensive to create, but it offers a gameplay experience that Minecraft doesn't and never will. Or at least, by the time minecraft can procedurally generate an experience like GoW, the big-budget AAA franchises will have moved on to something flashier.
And certain franchise titles are attractive because of the licensing, eg the NFL. That is unfortunate but not something the gaming industry can do much about immediately.
However, one huge warning: The learning curve is 100 times harder than Minecrafts, and the base art for he game is asci!(although you can upgrade it with user made graphic packs) It will also take all of your processing power.
"Because I want to avoid us just focusing on reaching release,
I suggested that we should dedicate 50% of the development time
in Minecraft towards adding fun new stuff. Basically, any developer
working on the game (two people at the moment) can just come up with
something they'd want to add on a day-to-day basis, as long as the
rest of the team thinks it's a decent idea. If it ends up being fun,
it gets added." [1]
[1] - http://notch.tumblr.com/post/2687176736/information-dump-inc...
"Braid and Minecraft are both examples of how a few good
ideas, executed in an accessible and affordable way, will
outsell franchises by orders of magnitude."
> Why it matters
> Sounds interesting, you say, but why should I care that a few guys have put together a cool little indie game? The reason you should care is because a team of four or five people using free libraries and cross-platform tools have just made a mockery of the last five years of franchise-oriented, $50 million budget, yearly-release, AAA game development. And it's not just a fluke. The Humble Indie Bundle, World of Goo, Braid, and a number of other extremely low-budget titles have electrified the gaming community, while games with millions in marketing budget like APB and Kane & Lynch fall flat on their face critically and commercially. Gamer discontent with these barren blockbusters is palpable, and Minecraft is the new poster boy for it.
Oh, they've "electrified the gaming community", have they? But how well are they doing financially?
Apple's App Store has enough successful apps to give developers hope, but the PC videogame scene needs more data points, before I'll start considering going "indie", as the kids call it.
How well does Minecraft do in terms of protection against piracy? I haven't heard a lot about it, and considering games like the aforementioned World of Goo's problems with it[1].
This is like saying that the success of Audiosurf on Steam ushered in a new era that developers would now be able to repeat. Steam has definitely made a big different, but everyone, calm down and take a deep breath for a second.
Notch is a friggin' wizard, and as much as people will try to reverse engineer its success, don't try to create a trend graph with one data point. I think it'd be devastating to give aspiring developers the impression that the road to success has been paved. Notch has found a way, but he hasn't paved it for the rest of us.
[1]: http://www.rockpapershotgun.com/2008/11/14/world-of-goo-vs-p...
I find myself thinking only of Half Life and Portal. Half Life, in which people were crazy about Gordon Freeman (and he fit the part) and Portal, which did not do this in the slightest.
Has it become conspicuously common? I've fallen a bit out of touch with modern games.
Moreover, the incredibly high cost of production of many modern games limits the sorts of games that get made. Minecraft level sales are barely enough to cover the costs of making a game at a company like EA or Activision.
Hopefully Notch's success will lead to the development of Minecraft as a highly modable platform for roughly similar games and also to the development of new low-cost game systems that produce no less enthralling experiences.
And when we look at the quality from that time period - A little over a decade ago - games like Diablo, Starcraft, Quake (2) and Unreal were the ones with the best quality. With a bit of effort, indie developers and startups these days can easily beat the quality they had.
If this continues, what will we see in 2020? As the quality a game can achieve converges towards some limit (At least I'm assuming so), will indie games be more and more common and actually manage to make games that will challenge big-budget franchises?
In a while i'll show HN my project relating to this. :)
That being said - it seems like a very cool library!
I've used it in the past to visualize the structure of Google Wave conversations, and intend to use it in the future to visualize related products. (Unless I use this one instead, of course :)
I think that a graph interface like this shouldn't be the only way to get at some set of data, but at least for some people, it can be a really new and compelling way to explore it.
seems as if the algorithm grows unstable for very high node repulsion. even with a few nodes you can tell it is getting caught in a local energy minimum, plus the oscillations are jarring. maybe just cap the repulsion strength at 50k?
have you thought about adding hover text, upon a mouseover of the vertices?
also, maybe instead of spring tension, one could use fixed lengths given by the weights of another text file. giving user generated meaning to the edge lengths.
I ask because it uses a Force Directed layout, I guess it will get very slow after a few thousands of nodes.
Looks promising though. I'll play with it...
There's nothing wrong with standard Javascript provided the environment is sane.
1. Relying on willpower for long-term change
- Imagine willpower doesn't exist.
2. Attempting big leaps instead of baby steps
- Seek tiny successes, one after another
3. Ignoring how environment shapes behaviors
- Change your life and change your context
4. Trying to stop old behaviors instead of creating new ones
- Focus on action, not avoidance
5. Blaming failures of lack of motivation
- Make the behavior easier to do
6. Underestimating the power of triggers
- No behavior happens without a trigger
7. Believing information leads to action
- We humans aren't so rational
8. Focusing on abstract goals more than concrete behaviors
- Abstract: Get in shape. Concrete: Walk 15 min. today
9. Seeking to changea behavior forever, not for a short time
- A fixed period works better than "forever"
10. Assuming that behavior change is difficult.
- Behavior change is not so hard when you have the right process
Can anyone expand on what they mean by 3 and 6?
#11: Not realizing you can't imagine your future accurately.
Some changes you make are so significant it's like you are playing a whole new game. If you don't realize this, then you will not be a good judge of whether to make the change.
For example, let's say you enjoy playing basketball. Someone comes up holding a football and invites you to play football. You don't realize that he's talking about a new game with new rules and a new environment. You look at his oddly-shaped ball and imagine yourself trying to dribble that ball down the court. You conclude that you wouldn't enjoy football.
I've made numerous significant life changes, among them becoming vegan and going car-free. Both of those decisions are game-changing and so it's really hard to imagine yourself making those changes; you really have to just try it for a while before making up your mind.
For veganism, I often hear people say "I could never give up X" or "What do you eat?". They imagine themselves no longer eating their favorite foods, not realizing that after adjusting to veganism their palate will change and they'll have different favorite foods. And they also don't realize the abundance of vegan foods out there because they've never had an incentive to look, so they just assume they'd be eating salads all the time.
Ditching my car was another game-changer. I wouldn't recommend doing this unless you are in a well-designed city. I moved from Norfolk, Virginia to Boston, Massachusetts and ditched my car in the process. If I had imagined myself in the environment of Norfolk without a car, I would have never been tempted to do so. But I had visited Boston and also had lived for a while in Germany without a car and so I knew what it was like to live in a well-designed city without a car. Even so, I was pleasantly surprised by the amount of cost and inconvenience I was getting rid of by not having a car: no more gas-filling eating away my time and money, no more large key fobs filling up my pockets, no more having to ask my friends if they know a good mechanic, no more driving around forever looking for a parking space, etc. etc. All the inconveniences of owning a car were somewhat invisible beforehand and they didn't become quite so apparent until after actually ditching the car.
tl;dr: if you're making a significant life change, you can't accurately imagine what your new situation will be like by extrapolating from your past experiences.
It really makes you think about behavior change in a much clearer way.
I was at a presentation by the app's creator, apparently the hardware was already available through some company, so you could theoretically do it with any device that outputs to a headphone jack. The iPhone's touch interface simply provided a ... unique and apparently (don't ask me!) expressive method of control.
However, can anyone chime in about the differences there are between using the iPhone jack and using the dock connector? I know you're supposed to fill out some docs with Apple to officially hack on the dock connector, but I believe you can find hardware to do that without Apple's consent. It looks like one would have to go the jailbreak route with that project as well.
I imagine the main thing is that a hobbyist can much more easily/cheaply get a jack connector than a dock connector...
I've gotten as far as opening an input and output stream with it, but I haven't had time to dig up an RS-232 device to try talking back and forth.
I'm going to put together a board based on their specs. If anyone in the bay area is interested in collaborating on a project with it shoot me an email.
Currently, I am a bit doubtful concerning whether drawing extra power from an already very battery lifetime-constrained smartphone is a good idea.
On the other hand, the batteries shold improve in the future, so with a bit of luck the idea may just as well come to maturity at the right time!
So the assumption is that I, as a user, am naturally more willing to share my contact information with anonymous application X than I am with my friends.
Naturally, this is indeed a transparent effort at lock-in.
One of the permissions read:
"Send me email" (optional: send through a facebook proxy)
So now, you can also let the apps know phone number through the graph? I don't find that too big of a step. CAN-SPAM still applies. Perhaps they should set up proxies for the phone number, though.
What I find more funny is that ReadWriteWeb writes:
"Thankfully, this sort of information cannot be shared via your friends' careless actions, unlike other profile information."
which is in direct opposition to the attitude that blogs had on the same issue when Google complained that facebook was "trapping your contacts" by not letting you export them. Now they are thankful facebook doesn't do this :)
Opt-out..hahaha maybe opt-out of only the really obvious ways Facebook is selling your info.
However, this really could be quite useful if used legitimately, i.e. Facebook commerce, having shipping address available; location aware apps etc.
Well, as long as we are not allowed to partially denie permission requests (which of course would make certain apps not able to share our information to other third parties)
1) There are UI issues that have been raised elsewhere in this thread - mainly, that users get confused when shown a set of complex options. Having watched usability studies where users are given a lot of relatively complex options, I'd suspect that a model where users have to pick among the permissions to give an app is going to fail massively (ie, user turns on everything without actually understanding anything, turns off everything by default or just cancels out of the app install altogether.) A model where apps request permissions right when it's needed will be annoying users with all the dialogs needed.
2) Some apps don't work if they don't get all the permissions they need (imagine an address book app for an email program - if you don't get email address it just doesn't work.) Adding a lot of conditionals to change how your app works based on what permissions they get can be expensive and adds a lot of unnecessary test cases.
In my opinion, Facebook's decision give more granular permissions, but to make it an all or nothing proposition allows them to protect their users by removing spammy/malicious apps, and simplifies the applications built on their platform . This puts responsibility on them to actively remove malicious applications, and on developers to pick only the permissions they need. Given that users tend to make bad decisions given a set of complex options that they don't understand, it seems like they made a rational choice. AppStores on the various phone platforms have a similar decision to make as to how to best protect users from apps, and there isn't consensus as to the best model in that arena either.
They do need to step up their activity to remove malicious apps in light of giving regular applications this option.
This design makes what I would say are clear improvements, and doesn't try to throw out the design wholesale. This design makes just a few improvements - better use of white space, easier to read text, and I happen to think the header is better too. This pleases the part of my brain that knows how to lay out broadsheet newspapers.
Bravo, looks good! I also think the arrows should be bigger.
Try it with a bold/heavy/black version of Helvetica, like the "Comfy Helvetica" header you have on your page! I just tried it and I like it much better now.
- The jarring placement of the YCombinator image, throwing out the alignment and flow of the page.
- The over-sized numbers for each item.
- The excessively big header "Hacker News", and what appears to be a strange effect in the screenshot.
- Lack of a fallback font for Helvetica Neue (Helvetica, Arial, sans-serif).
- The centred nav items along the top bar are awkward.
- The tiny up and down vote buttons are what people struggle with the most in terms of mis-clicks, maybe these could do with some attention.
- A slight gap between each article so the "slab of text" effect isn't so strong.
I'll try and keep it updated as much as I can.
I went the opposite direction and went with Georgia (a serif font that was designed for better online legibility) and made the following tweaks:
- Tested out a block style button (1st listing) and adding more horizontal padding to make it harder to misclick on upvote.
- Made the header a neutral grey because someone said their eyes always moved to the top.
- Added more padding to the top just to give it some breathing room.
- Made the font underneath the titles slightly larger and made links turn "black" when hovered over.
I messed around in Firebug for this and in doing so realized the whole HN site is a gigantic table. Very interesting...
As for the font, why define one at all? Browsers already provide a default font which hopefully is configured by the user.
I'll try it out for size for a while - easy to apply using Stylish extension here for Chrome users:
Works in Firefox and Chrome. Why should Safari have all the fun? ;)
I also use a chrome plugin to inject some styling and other fun features to HN. It's on github at https://github.com/wookiehangover/grapeDrink-for-hackernews . Mine's definitely not as conventionally handsome tho.
We also stopped describing the video as optional. In practice it wasn't.
Just curious if there is anyone that has gone through YC with an established company, and how that worked out for you.
Does that count? How far you have progressed in mindset and development of the product? I wish there was a field for that in the application. I'd be interesting to see that progress, IMO.
Articles with the word "ever" in the title: Beware their gross generalizations, lack of gray area, and hasty conclusions.
Articles with both the words "never" and "ever" in the title: Never, ever read them. (oops)
Two spaces grew out of a typographic convention of using a 1.5-width space that was favored by typesetters for proportional typespaces because typewriters didn't have half-width spaces represented on their keyboards. The actually "correct" approach would be 1.5-character width spaces, because even in proportional typefaces a little extra space serves as a useful visual cue that aids in quicker text scanning by eye.
The modern convention of using a single space is the result of journalistic publishers' desire for economy of printing paper. It costs more -- either money for extra pages or characters that won't fit on a page -- to have two (or even 1.5) spaces between sentences. For that reason, a new convention for non-personal correspondence arose, not out of "correctness" or readability concerns, but out of the miserliness of accountants.
As for the lack of studies, that's because it's pretty difficult to come up with a meaningful set of criteria that can be (relatively) easily measured in such a study. Worse, the people with both the resources and interest necessary to fund such studies are for the most part not interested in finding out their cost-saving measures make it harder to read their publications. People I know who read a lot -- who enjoy reading -- including myself all agree, though: having more than a single (proportional or otherwise) character width of space between sentences helps with making it easier to read quickly without having to backtrack and without missing things. In fact, if anything proportional typefaces makes the problem worse, because the spacing between sentences tends to end up smaller than it would otherwise be.
For all his annoying certainty that people who are certain of their disagreement with him are annoyingly wrong, Farhad Manjoo is pretty laughably lacking in the proud correctness he claims.
There is no argument of value in this article.
I carried this practice over into the rest of my writing, although recently I have noticed that some web systems do not auto-collapse two spaces, and when filling out forms online I've generally reverted back to using single spaces to ensure proper spacing.
Of course, the software has to understand what it is that it is typesetting, and the font needs to define spacing in such a way that the typesetting software can do things as intended, so the specification for authors here is really defined by the software. If it wants two spaces after a period, then give it two. If it wants one, then give it one.
I suspect that most software expects one.
In a fully pedantic world, we'd have different unicode code points for "gap between word", "gap after sentence", and presumably others to cover every situation, and the font designer would then have full control.
I'm not at all surprised that many people still do this. I'm a little surprised that people assert that's a "proper" way to do it or for that matter get worked up enough about it to write that you should "never, ever" do it. Maybe it's the engineer in me, but I was expecting an actual negative consequence of using two spaces. Typography is important, but I'd guess that with modern kerning techniques the difference between two spaces and one is slight. (In fact, if I were designing a word processing app, I'd think this is is a case I'd account for: If there is a "proper" distance between the period at the end of one sentence and the start of the next letter, wouldn't you ensure that's the distance that is used whether the user typed one space or two?)
I use a double space after a period. Always have. I also still use monospaced fonts for almost any composing I do, because I use Emacs whenever possible for that kind of thing.
Any normal text layout software (a browser rendering HTML, TeX) is going to ignore whitespace in the source anyway.
"In the days of typewriters, the usual practice was to put
two spaces after the end of every sentence, and also to put two spaces after every colon. This helped make the separations between sentences more apparent, and helped editors more easily distinguish periods from commas and colons from semicolons. With the dominance of computers, that practice is changing, and it is more common now to see only one space between sentences.
"Ingrained habits die hard, though, so if you're used to hitting the spacebar twice after a period, you shouldn't stress out about it, particularly if you're using a Courier font."
Publications in the United States today usually have the same spacing after a period, a question mark, or an exclamation mark, or an exclamation point as between words on the same line. Since word processors make available the same fonts used by typesetters for printed works, many writers, influenced by the look of typeset publications, now leave only one space after a concluding punctuation mark. In addition, most publishers' guidelines for preparing a manuscript on disk ask professional authors to type only the spaces that are to appear in print.
Because it is increasingly common for papers and manuscripts to be prepared with a single space after all concluding punctuation marks, this spacing is shown in the examples in this handbook. As a practical matter, however, there is nothing wrong with using two spaces after concluding punctuation marks unless an instructor requests that you do otherwise. Whichever spacing you choose, be sure to use it consistently in all parts of your paper--the works-cited list as well as the main text. By contrast, internal punctuation marks, such as a colon, a comma, and a semicolon, should always be followed by one space.
>in the same way that waiters know that the salad fork goes to the left of the dinner fork and fashion designers know to put men's shirt buttons on the right and women's on the left.
Those are both examples of arbitrary decisions carried forward by inertia and slavish adherence to dogma. Makes me strongly believe the two space rule is another example. I read most, skimmed rest (it was kind of hard to find sentence breaks actually) of article but I found no argument or justification other than "typographers" say it's so.
I also frequently use monospaced fonts. So, author and these unquoted/unspecified typographers he claims to speak for can kiss my shiny double-spaced ass.
In general, modern typesetting software (and/or fonts) should be able to properly set the width of spaces between sentences to be slightly wider than than those between words. Unfortunately, TeX is the only common typesetter I know that does this.
1. Because it remains correct in monospace, and
2. Because no HTML rendering engine displays the second one anyway.
This man's rather ill-informed about the 'tech' part of his 'tech column' gig.
I've edited too many documents to count, but in nearly all cases, it was a default software setting that inserted extra space after a period, before the next sentence. The author can't reliably claim to know how much space Assange chose to use, any more than he can affect how his own text will be presented after it is processed for publication. It's an implementation detail that often gets transformed (by software and/or humans) as it makes its way through various systems.
As far as typesetting goes, TeX makes an inter-sentence space a bit wider (but less than 2x) than an inter-word space, unless you tell it otherwise. Since I trust Knuth more than this guy, I suspect that's at least considered typographically admissible.
If you're using a word processor with a monospaced font, it seems like it makes sense to follow the typewriter convention (two spaces between sentences). If you're using a word processor with a proportional font, and you want to follow the TeX typesetting convention, I think you're stuck: it's not trivial for a computer to distinguish between an inter-sentence space and an inter-word space (because of things like "etc."). So if you use a single space between sentences, it's going to be smaller than it would be in the typeset document, and if you use a double space, it's going to be larger than it would be in the typeset document. Or you could conveniently decide to follow the "french spacing" convention, in which inter-sentence spaces are the same size as inter-word spaces. Which is apparently what the author favors.
But there's one annoying, persistent browser bug that cramps my style. If a line wraps after the first of two spaces, the second space will be on the next line, which looks terrible: http://i.imgur.com/MksV7.png
There is a good reason to use one space, and that is that when you're typing, you're only creating text, not typesetting. Software does the typesetting now, and will automatically space out sentences in a way that looks right. You don't need to do it yourself, just like you don't need to enter manual linebreaks anymore.
I was taught to add two spaces after a period, and I have no plans to stop doing so. If people really want to complain, I suppose I can show them the latest edition of the APA style guide, which made two spaces the recommendation again, or MLA, which suggests one but notes that "as a practical matter, however, there is nothing wrong with using two spaces after concluding punctuation marks".
Of course, maybe the author isn't as dumb as he sounds... He found a way to get paid to complain about spacing, after all.
Then it rapidly devolved into argumentum ad nauseum and appeal to authority; I was very disappointed.
- Some use two spaces because they are used to it. They are wrong, stupid and annoying.
- Author use two spaces because he's used to it. Why can't you see that he is correct?
To give an actual argument related to value, I think it is helpful to differentiate between periods that end sentences and periods that end abbreviations.
Any use of the space bar in a computer typesetting context is just a hint to some algorithm regarding how much space you want put between the characters on either side. TeX doesn't put "1.5 spaces" between sentences; it puts glue that is slightly stretchier than the glue it puts between words.
I often type two spaces because it was drilled into me when I learned touch typing at 14 years of age. Very hard to unlearn that. Unusually I also had a Dad who was a layout designer, so I knew a lot about typography including that you only use a single space when laying type. Still f'ing hard to overcome the double space which is done completely reflexively by fast touch typists.
On a similar note, I got a 0 on a paper once because it was not in the required font, Times New Roman. I had written it on my netbook while on vacation and printed directly from it and had not realized that the Linux distro installed automatically called Liberation Serif "Times New Roman" inside of Abiword.
From the HLA source he cited (http://www.mla.org/style_faq3):
"... As a practical matter, however, there is nothing wrong with using two spaces after concluding punctuation marks unless an instructor or editor requests that you do otherwise."
I considered reformatting all the text to use double-spaces, but then figured that I'd get an equal number of complaints from the single-spacers (little-endians?)
In the end I changed the code to ignore the double space if received as input. No complaints after that. :-)
But what I really dislike is the preceeding space before the question mark. That really messes up my brain sentence parser (and many word processos too).
"You're off my Thanksgiving invitation list, Farhad."
This is a prob. I tested!
This is a prob. I tested!
Section 2.1.4 �" Use a single word space between sentences.
In the nineteenth century, which was a dark and inflationary age in typography and type design, many compositors were encouraged to stuff extra space between sentences. Generations of twentieth-century typists were then taught to do the same, by hitting the spacebar twice after every period. Your typing as well as your typesetting will benefit from unlearning this quaint Victorian habit. As a general rule, no more than a single space is required after a period, colon or any other mark of punctuation.
I was always under the impression that in a proper typeset manuscript, sentence spacing should be slightly wider than a standard single space. Typographers make this change when they typeset right? Isn't there an alternate ASCII character for this purpose (entirely not sure, I might be thinking of special characters in certain fonts)
This anyway points that 2 space rule is not "right way" since significant portion of the world (maybe majority of your customers) will think it is weird and be confused about it. The "1 space rule" is more neutral.
Second, virtually all of these questions take as an axiom that H.264 is IP-encumbered and WebM/VP8 isn't. Technical analyses (by people who have actually implemented H.264 and are familiar with the patents) suggests that that simply isn't the case. That the author of this article thinks that VP3's release prior to H.264 might invalidate any part of the H.264 patent pool suggests that he may not be at all familiar with the patents in play.
Similarly, support for a "known patent troll" isn't germane to the debate if that patent troll is in the mix one way or the other, which appears to be the case.
Third, the fact that the H.264 patent pool hasn't been brought to bear on On2 tells us nothing at all about how successful H.264 would be against WebM; it's not at all unlikely that MPEG-LA sees nothing worth suing in Xiph/On2, and if that's the case, it is surely a different situation once Google pushes adoption.
Fourth, an "open pledge of support" for WebM from chip manufacturers is worth exactly nothing to the people who have spent many many hundreds of millions of dollars on mobile devices with hardware-accelerated H.264. One can reasonably argue that those people don't matter, but they can't with a straight face suggest that a "pledge of support" in any way mitigates the problem.
There's nothing wrong with this post as a contribution to the WebM/H.264 Apple/Google debate. But one gets the sense that the author sees it as some sort of devastating argument. I'm not sure he realizes that handwaving around "known patent trolls" and "decades of threats by MPEG-LA" and "is it because said codec isn't promoted by Apple", he's actually making a fairly weak sounding argument. He sounds emotional.
I'm gonna go with the analysis of the guy who said his B-frame implementation gave x264 the project's single greatest encoding quality improvement over the guy who thinks the release date of VP3 determines which patents encumber VP8, thanks.
Everybody seems to be crying "but hardware support is coming soon!" without seeing it's difficult: "The unfortunate problem with this is that it's a nightmare for hardware implementations, greatly increasing memory bandwidth requirements."
It comes down to WebM/VP8 being inferior (in specification and implementation) to an existing widely deployed (in bits and gates) codec.
Feel free to argue the fallacies of the osnews questions if your time is worth nothing.
I mean that's been the recurring theme on that site re: corporate Google for years now. He's not throwing darts when Google does something in their own best interests. He's throwing darts when Google tries to spin those moves as being moves made in the interests of users, 'open development', free puppies and hugs for everyone, etc.
That does not follow at all.
edit: I should say that it only follows if the patents in the patent pool apply exclusively/specifically to H.264.
I bet it would help, but I don't see Apple doing that anytime soon.
Currently, Apple uses PowerVR and nVidia chips for hardware decoding in iDevices and Macs, and those companies have already shown interest in building chips that offer WebM support. But Apple would have to find some way to support WebM hardware decoding on current devices, something like a Rosetta layer for video playback.
If Apple were to only include full support on new devices, it would feel the wrath of the entire tech press, not to mention organizations like Consumer Reports and Greenpeace. Apple only risks that kind of bad press when it's about a technology they've authored themselves.
My personal fav:
If Apple were to switch to WebM and drop H.264 tomorrow,
would you then herald it as a great move?
Mozilla is doing it entirely out of ideology (and sticks to their ideology much more than Google usually does).
The main benefit is that Google's move may reduce the risk that the MPEG consortium goes crazy in the future, and starts to charge every possible user, causing havoc in the process.
The main cost is more certain: a huge inconvenience for content producers that were hoping to get away with going H.264 only, causing havoc in the process.
The interesting question is the usual one: is the benefit worth the cost?
It's one thing to be a proponent of the open web. However, it is just amazing the length people will go to in this "debate" to justify Google's hypocrisy. This is a corporate strategy move aimed at controlling the market and jamming up Apple and it's hundreds of millions of devices that play H.264. Gimme a break.
All other browsers are open enough to get native support or have a plugin. Android phones will have support. Who knows or cares what happens on WP7...
Google is taking a stand. It is annoying that Google is removing existing support for h264. It will be annoying if Apple is completely against adding a software WebM decoder for current gen iOS devices, and ignore hardware solutions on next gen ones. But both companies are free to do whatever.
I also think this will have negligible impact in the real world. Youtube will always work on whatever. Content providers can just upload stuff there if they don't want to manage multiple formats themselves.