The bloat of AMP - <AUTHOR> https://lolware.net/2017/07/04/amp-bloat.html <comment><USER2> also, YouTube's embedded player is 1.17MB js minified (~411KB gzipped) [1]

this is why we simply self-host our mp4s w/ <video> tags.

Gmail and AdWords UIs are equally terrible/bloated perf-wise. the plain html version of gmail [2] is still by far the best. for a company that built V8, Closure Compiler, Chrome Devtools, PageSpeed Insights, Lighthouse, etc. they really do a shit job on their own properties. Gmail went from the best in performant webapps when it first popularized Ajax to the worst example of one in 2017.

it's as if Google can't find good frontend engineering talent, i don't get it :/

AMP is not a solution for slow pages, even if it's billed as such to clueless content producers. AMP is a content lock-in and user tracking strategy with the promise of boosted visibility/rank. nothing more.

[1] [https://www.youtube.com/yts/jsbin/player- vfleyMpxV/en_US/bas...](https://www.youtube.com/yts/jsbin/player- vfleyMpxV/en_US/base.js)

[2] [https://mail.google.com/mail/u/0/h/1pq68r75kzvdr/?v%3Dlui](https://mail.google.com/mail/u/0/h/1pq68r75kzvdr/?v%3Dlui)

<comment><USER3> > _also, YouTube 's embedded player is 1.17MB js minified (~411KB gzipped) [1] > this is why we simply self-host our mp4s w/ <video> tags._

I find that as a user this is an often _not_ ideal. For starters I probably have the JS cached. And the videos almost always going to play faster and more smoothly from google CDN versus some homebrew solution.

<comment><USER2> > For starters I probably have the JS cached.

this is one of those fallacies that people keep repeating and actually believe as truth. if you look at the headers of the youtube player file i linked, you'll see that anyone who had it cached prior to Wed, 28 Jun 2017 18:12:45 GMT is out of luck as well as myself when i request in > 48 hours. i dunno how often it changes, but it's safe to say "very frequently".

        date:Wed, 28 Jun 2017 18:23:58 GMT
        expires:Thu, 06 Jul 2017 18:23:58 GMT
        last-modified:Wed, 28 Jun 2017 18:12:45 GMT

also relevant: [https://twitter.com/HenriHelvetica/status/877924754195324928](https://twitter.com/HenriHelvetica/status/877924754195324928)

<comment><USER4> A good point.

RE that tweet, I assume the values there are in milliseconds. I _hate_ it when people don't label their axes.

</comment></comment></comment></comment><comment><USER5> I've tested the AMP and regular versions of a The Guardian article page, and the AMP version is more than 4 times smaller in terms of transferred KBs, coming in at about 300 KB. Yes, JavaScript represents more than half of that size, and there are 16 separate script files, but in comparison to the regular page, it's a significant improvement.

Note: I've tested with an ad/tracking blocker.

<comment><USER6> The funny thing is that that Guardian article page is probably less then 10Kb in content to begin with. It's all the cruft on the page that makes it large, and AMP is _also_ cruft, just less of it.

<comment><USER5> The main content does indeed load after disabling JavaScript. The page size is about 60 KB in that case.

</comment></comment></comment><comment><USER7> > I mean, I still can't make Get Cryptolocker[0] show up on Google.

Hmm, I wonder if that's something to do with the fact that you're literally distributing malware...

Surely there are legal issues here too?

[0] getcryptolocker[.]com/get/

Edit: According to the about page, it isn't really cryptolocker, but VirusTotal still isn't happy about it: [https://virustotal.com/en/file/0a2816af8a0580b0f58cb4ee1f102...](https://virustotal.com/en/file/0a2816af8a0580b0f58cb4ee1f102dc507d4013a0c1fd42af285d269da6029ee/analysis/) I'm sure that in itself will hurt rankings.

<comment><USER8> > Edit: According to the about page, it isn't really cryptolocker, but > VirusTotal still isn't happy about it ….

Since you've obviously followed this up, for the benefit of those of us who don't want to follow the link, could you explain what it is?

<comment><USER7> I have no idea, I haven't tried running it.

</comment></comment></comment><comment><USER9> AMP plugins are (supposedly) designed to be the fastest/lightweight/user- friendly implementation of a specific functionality.

Yes, if all you consider by "bloat" is how many kilobytes of javascript you have on the page, AMP is not doing well. This is a crucial mistake in this post. In reality "bloat" is more than that. It also refers to whether there's active javascript slowing the browser down, whether resources are cached etc.

The purpose of having these small plugins that enable functionality is that they are all individually cached by your browser for a good amount of time. Any Google user would have them cached as they are all using the same reference that any other AMP page would. This is unlike other "bloat" where resources are fragmented and come from any number of sources that users probably haven't hit before. In addition these JS resources wouldn't have been written for a specific experience - which AMP is

<comment><USER4> The problem is, though, that the moment such wide variety of rich-media plugins is available, AMP _stops working_ for bloat prevention - people will bloat up their AMP pages with superfluous media and JS. Bloat is not a web protocol problem - it's a problem of people being incentivized to add it.

</comment></comment><comment><USER10> > this image will helpfully render with three dots in the middle to show you > it's full of AMP goodness or something.

It will render with three dots to let the browser know it is still loading. once it has finished, the dots disappear.

</comment><comment><USER11> Google decided to name something "AMP" to confuse people who've used AMP to refer to Apache, MySQL and PHP for ages? Thanks, Google!

</comment><comment><USER12> you also have to remember these javascript files are then cached and used for ALL amp pages across the board and only gets invalidated once a week. there is also a stale-while-revalidate mechanism in amp if service workers are available so users never experience the delay of fetching new javascript binaries

</comment><comment><USER13> I haven't used AMP, but my impression with all of Google CDN JavaScript files for AMP is the end user has to download them just once per version (which I agree will lead to a bloated first load experience) but on subsequent requests throughout the AMP network they'll be loaded from cache. Similar to how Google recommends you load jQuery through their CDN since millions of people already have it in cache.

<comment><USER14> And then you have to waste your battery on running 100s of kbs of JS to show static HTML.

No thanks.

<comment><USER9> But you'd rather go to the non AMP version which is 10x as bloated?

It seems like the vision in your head is: AMP vs. Perfectly optimised site. In reality it's publishers who have built their main site over several years with massive bloat and are unable for whatever reason to optimise.

<comment><USER15> What google could do instead, if they really cared, is incentivise simple javascriptless static HTML. They won't do this though, because it makes tracking for ads harder.

<comment><USER16> This seems to be the main recurring argument against AMP.

It isn't a comparison between AMP and the current web, it's a comparison between AMP and this utopian case where the entire web is simple javascriptless static HTML.

It's like the ascii ribbon against HTML email...

<comment><USER15> The diffence is that google has the power to improve the web and instead they warp it for their own profit while saying they're improving it.

No one doing the ASCII ribbon thing could change what the majority of mail users saw when they opened their mail clients.

<comment><USER16> The problem is that what you call "improving the web" isn't necessarily what other users would call "improving the web".

What do you mean by improving the web?

</comment></comment></comment></comment></comment></comment></comment><comment><USER17> Breaking down a few of the concerns in this article:

> Google's v0.js, which is compulsory on every AMP page, is currently 217Kb of > Javascript.

It is only 67KB gzipped, so it's not as bad as suggested, but this is an area for improvement.

However, the file size doesn't directly translate to the implied latency, which is really what we care about. There are several reasons why this is much better than your average <5KB javascript files:

\- The file loads with an async tag, so does not block rendering.

\- The file uses a stale-while-revalidate header with 30-days, which means that any user who views any amp page on the web once a month will _never_ wait for this file after the very first page load. That's most users.

\- If the page is loaded from the AMP cache, which is probably the common case, the file has a 1 year expiration.

\- The javascript uses a foreign fetch service worker to implement the same 1-year effective expiration on the non-AMP cache page views, for browsers that support it.

> Google's default analytics.js is 30Kb. The AMP compliant edition of amp- > analytics-0.1.js - is 80KB.

All of the same responses as above apply here too. It's actually only 27KB on the wire, uses stale-while-revalidate and foreign-fetch service workers, etc.

However, this is also not a completely fair comparison. amp-analytics doesn't implement Google Analytics, it implements _every_ common analytics vendor on the web and has a configuration system for novel vendors. Most pages have half a dozen vendor's scripts running on them each with their own javascript payload and running code. This produces a single analytics event runtime and dispatches events to all of the vendors you want to run.

Another advantage here is that it's not a new origin to connect to. Even if it's not cached, the DNS and HTTPS connections will be shared with v0.js and any of the other extensions. Depending on your connection, this will almost certainly reduce latency more than the added bandwidth.

> you can still embed bloatey ads

True, however what is less obvious is that those ads cannot block the main thread for loading the page, so they can't cause issues with scroll or displaying content. In fact, the ads don't actually load until right before they should be in the viewport. The ads also cannot reflow the layout of the page, making content move around as the page loads.

> you could dynamically build a page using a mustache template

True, but you cannot do so using custom javascript on the client which often blocks the rendering thread. This is a direct mapping from json to html.

> The other is to append #development=1 to a URL. Unfortunately, if you try > that here, your browser will crap out with errors about CORS and a CSP > violation.

The issue here is that the validation must operate on the original source of the document. By the time javascript runs, the browser has modified the DOM to the point where the original string is simply unavailable. So the #development=1 trick works by refetching the document using an XHR which only works in certain CORS environments. I'm not sure how else to do this. If you want to validate docs often, I recommend the chrome extension instead ([https://chrome.google.com/webstore/detail/amp- validator/nmof...](https://chrome.google.com/webstore/detail/amp- validator/nmoffdblmcmgeicmolmhobpoocbbmknc?hl=en)). There are ports for other major browsers.

> Paraphrasing: you can still load animations, large images, videos, etc.

True, but you also don't have to. All of the code for loading these things has been optimized so that while it still may take a while to load those embedded objects, they won't slow down the rest of the document, which is the main advantage. They also won't cause re-layout events causing content to jump around while the page is loading.

As a test, open up the network panel on chrome devtools, simulate a mobile phone with a smaller viewport, and hard refresh the page. You'll notice that the 9MB image included as a demo doesn't even get fetched. It's only when you scroll down halfway on the document that this image starts loading. This is what the amp-img component is accomplishing.

The author appears to want fewer html features supported which is understandable, but it's not clear that this opinion is widely shared.

> this image will helpfully render with three dots in the middle to show you > it's full of AMP goodness or something.

It's a loading indicator, the dots disappear when loading is complete. This is admittedly an odd effect with an animated gif, since the loading is still happening after the first frame has completely loaded.

<comment><AUTHOR> Hi Greg,

Thanks for your response here. I think we'll just have to agree to disagree on a number of points, but there's a few I would like to comment on:

        If the page is loaded from the AMP cache, which is probably the common case, the file has a 1 year expiration.

As per the screenshot, Google Pagespeed appears to disagree. Looking at the headers via curl, I see "expires" with the current date and time (ie, it's already expired), a max-age tag of 50 minutes. I'm not seeing one year anywhere.

If the 30 day stale-while-revalidate really invalidates those two headers, and I'm not knee-deep in browser support enough to really know, can someone at Pagespeed please consider this a bug?

The issue has come up a number of times on various forums over the years in relation to the vanilla analytics.js, and the answer that's usually accepted is "just self host the Javascript". I'm calling it now - people will start doing this with AMP scripts if Pagespeed doesn't change the warning, regardless of the consequences.

         trick works by refetching the document using an XHR which only works in certain CORS environments. I'm not sure how else to do this.

Thanks for explaining that. It makes sense in a way I don't see another way of doing it - but the AMP website[0] suggests this should "just work". If it in fact only works "in certain CORS environments", what I'm hearing is that most people testing these AMP sites just have those environments and assume everyone else does. Which may be concerning from a security point of view.

[0] [https://www.ampproject.org/docs/tutorials/create/preview_and...](https://www.ampproject.org/docs/tutorials/create/preview_and_validate)

<comment><USER17> > Looking at the headers via curl, I see "expires" with the current date and > time (ie, it's already expired), a max-age tag of 50 minutes. I'm not seeing > one year anywhere.

Take a look at the version of the doc which is served from the AMP cache: [https://cdn.ampproject.org/c/s/lolware.net/2017/07/04/amp- bl...](https://cdn.ampproject.org/c/s/lolware.net/2017/07/04/amp-bloat.html)

I like to think of PageSpeed Insights like the output of a good linter. No linter is or can be perfect. The issues reported are good things to consider and are correct for the majority of times that they trigger, but not in all cases. This is one of those cases.

> CORS

The best fix here might be a more useful response in the dev console. Plenty of sites, especially on dev servers, don't have any CORS headers at all, so this does work in those cases. I'd still recommend one of the other validation methods which work fine with any CORS setup.

</comment></comment></comment><comment><USER18> The site uses AMP. My block AMP since it's a cross-domain request.

After a while some inline script must be running into a timeout because the content suddenly shows up.

Completely disabling javascript makes the site display faster.

</comment><comment><USER19> less whining, more gifs of talented cats.

</comment><comment><USER20> If there was an option to disable AMP in Chrome, I'd flip it to off immediately. The longer this option is MIA, the more likely Firebox will become my default browser (again!)</comment>


GTD sucks for creative work. Here's an alternative system - <AUTHOR> http://heydave.org/post/24286720323/gtd-sucks-for-creative-work-heres-an-alternative <comment><USER2> It's funny how some people lambaste GTD and then proceed to offer a productivity solution that's basically GTD plus some extra steps or tools. The basic tenets of GTD are sound and not new. David Allen just simplified the process and provided some psychological justifications to why they work. So as long as you collect everything out of your head and into a system where you can review and prioritize, that's GTD for everyone regardless of your station in life.

<comment><USER3> GTD is NOT for everyone.

A productivity system that doesn't make you feel good about your daily life is not be sustainable in the long run. It doesn't matter how effective it is, that's not a life you want to be living.

What makes you feel better about your daily life will depend on your temperament. The author of this blog post found that GTD resulted in his feeling like he had a never-ending river of stress ahead of him. GTD failed for him.

Another example where GTD fails is for anyone who is doing sustained creative work. As Paul Graham describes in [http://www.paulgraham.com/makersschedule.html](http://www.paulgraham.com/makersschedule.html), it is very important for those people to have large blocks of time set aside for focused work. GTD's focus on breaking things into simple tasks whose execution is routine is the antithesis of how work needs to be organized for a maker.

That said, GTD is life-changing for many people. If it works for you, by all means do it. But don't make the mistake of trying to convert everyone else to it. It isn't always right.

<comment><USER4> GTD IS for everyone. All GTD is, is acknowledging how our brains function at a very fundamental level, and then building a trustable system around that.

Why can't create tasks work in GTD? GTD methodology doesn't say that you HAVE TO break everything up into 2-minute chunks. It can be 2 hours set aside for creativity.

Saying "X doesn't work for everyone" sounds nice, as does "everything in moderation." But I get skeptical when someone uses "everything in moderation" to excuse their smoking habit, or "___ is NOT for everyone" . Hundreds of years ago I'm sure there were people arguing that "reading and writing is not for everyone." Eating vegetables is not for everyone, etc.

<comment><USER5> I get skeptical when people are so enthusiastic about some newfangled anything that they compare it to reading and eating vegetables. GTD _could_ be that good but it's an extraordinary claim and it deserves to be scrutinized accordingly.

<comment><USER4> As you should. It's not my job to sell Gtd to you. But I have to challenge your emotional intelligence if you let other peoples' enthusiasm cloud your own view.

<comment><USER5> I base it off my my own experience getting enthusiastic about things.

<comment><USER4> lol, but isn't your own enthusiasm at least somewhat affected by other peoples' enthusiasm or lack there of?

<comment><USER5> Sure. I'm not sure what your point is, maybe my point wasn't clear. I'm just saying that I've been in the position at least once where I was excited about something and I overblew its potential in solving problems. So when I see others doing it, I can relate, but know that they're likely clouded in their judgement.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER6> I don't think that was a failure of GTD. I think that was a failure to understand your own limitations and what you're realistically going to be able to accomplish in any given timeframe. It really sounds like a fundamental failure to _properly_ understand GTD.

If you actually read _the book_ \--rather than the BusinessInsider, et. al. listicles summarizing it--Allen makes the point that the most important feature of any task tracking system be that it is not cumbersome. All else be damned. If whatever system you're using to keep track of what you need to do is getting in the way of keeping track of what you need to do, then it is no good.

He also makes the point that nobody is meant to do everything in the book. The book is meant to be a cookbook, you are meant to try different things in the book up to the point of gaining control of your work _and then put the book down_. You're supposed to stop reading GTD when you start to get things done. Don't mess with a good recipe.

I keep a single sheet of paper as my TODO list. If it doesn't fit on the paper, it doesn't go on the list. It's one list for both work and personal issues, because I only have one life, I can't clone myself and work on two lists in parallel. I scratch things off and reuse the paper until it's full. I then rewrite the list on a new sheet of paper, with items that have gone undone for a long time naturally bubbling up to the top of the list.

And if something has been ignored at the top of the list for a long time, I just throw it away. If it didn't get done in the last month, clearly it's not that important. If it were more important, I would have made the time to do it.

Get better about throwing away your emotional baggage.

</comment><comment><USER7> I too find GTD unsuitable for creative work, mostly because it doesn't handle open-ended, non-tickboxy tasks well, though I can't say that I was using GTD properly -- for example, I couldn't bring myself to do weekly reviews. Overall, GTD felt like it requires too much willpower to run.

Have you tried Mark Forster's Autofocus or Final Version Perfected systems? If not, you owe yourself a try. The systems, at their core, are very simple:

1\. You have a long list of tasks (the same 'ubiquitous capture' principle as in GTD and other systems) 2. You scan the list for tasks that 'stand out' for you as 'ripe' to be done / worked on. This means that you're mentally ready to do these tasks. 3. Work these tasks for as long as you feel like. It's not necessary to finish these tasks. 4. After you've dont with a task, you either cross it off the list, or re-append it to the end of the list.

I found his systems much more tolerant of creative work, and much less willpower hungry. A downside of these systems is that they're not capable of handling tasks with start / due dates.

Also, regarding de-cluttering todo lists, I firmly believe that:

1\. ALL your tasks and actionable thoughts must be captured in your system. 2. Your _current_ todo list must only show items that you are ready to do _right now_ , at the moment. For example, your todo list shouldn't show the task 'Vacuum the floor' if you're not at home. Therefore, there must be ways of de- cluttering your todo list that allow you to defer the tasks until your external (or internal!) conditions are more conducive to working on these tasks.

(I got fed up with the inability of most todo apps to do the above, so I'm working on my own todo app).

<comment><USER8> This is actually a perfect application of GTD. Most people don't realize how flexible GTD is, and feel like everythin must be well define, and have a time frame. It doesn't. You have the reviews for that. You have the "projects" list for that. You have "waiting for" for that.

"Spending time on 'creative job x'" is actually a perfectly good task name to add to your "project" list.

In your daily review, you scan the one you want to work and and you add the ones you feel like to your "next" list.

GTS itself must NEVER be applied as-is, and should be adapted to your line of work, rythm, life style and personnalité. And it's very good at it.

<comment><USER7> I guess I couldn't stomach the idea that GTD mandates dedicated review stages, while in Autofocus / FVP and in my own system review is a continuous process.

Ideally, I'd like to have the ability to do 'makeshift reviews' per-task, and on different timescales. For example, if I don't feel like doing Task X today, I'd defer it for 5 days, so its next review will happen in 5 days. But if there's another task I'll probably want to do tomorrow, I'd defer it to tomorrow, so I'll review it tomorrow.

On the other hand, I do seem to have a de-facto review stage. In the morning I usually go through my task list in Wunderlist (which I hate but use daily) and mark items I'd like to do today. But this is probably because Wunderlist doesn't offer a proper Defer / Hide Until ability that doesn't screw with tasks' due date.

(And I have a recurring task 'Review all items', a relic from a bygone era when I attempted to do GTD properly.)

</comment></comment></comment><comment><USER9> From what I am reading, the author is saying they are effectively time slicing their week. Each day is like a "task", in the software sense, that gets to run and make progress to its goal. You have to consider all the things that you could do, but then decide which should be prioritized because it will deliver results towards the goal. This may be better for creative work, because it is easy to otherwise keep busy doing things that seem important, but if you think about it they do not really do enough to get you to your goal. (Like how easy it is to drift towards unnecessary feature work over maintenance.) At the same time, "next actions" may not quite work because the work is often non-linear (though I would not say they suck). It will be interesting to see how personal management plays out in the long, long run and how it develops against AI.

</comment><comment><USER10> GTD is not for creative work. GTD is great to deal with _type 2 procrastination_ [1] because not everybody can afford to have somebody doing their important errands. So it is just an efficient method of preventing my (your) life to become a mess. Listing every micro action in a fancy way (in my case I use Evernote [2]) would be wasted time (that is better spent deciding what is the next action or doing real work), a sheet of paper is more efficient for that.

[1] [http://paulgraham.com/procrastination.html](http://paulgraham.com/procrastination.html)

[2] [https://github.com/we-build-dreams/hamster-gtd](https://github.com/we- build-dreams/hamster-gtd) (a simple implementation that you can use as a starting point)

<comment><USER6> I don't agree that it is not for creative work. I think most people just don't understand the process of creativity enough to be able to think about it on a meta level.

Your TODO list is meant to be an extension of your short-term memory, not long-term. It's not a log of activity. It's not a planning document for assigning deadlines and figuring out project length. It's low-friction reminders of whatever you need reminders for.

Haven't you ever been working on something and realized there were two different things that had to be done, but in different directions? If you write a TODO for one of them and start working on the other (without writing a TODO for it), then you won't have to break your flow just to remember the other item thereafter. It's okay for things you do to not be on the TODO list, and it's okay for TODO list items to only live for 15 minutes, so long as it is longer than it would live in your short-term memory.

A TODO list is not ever meant to be completed. Things go on it and come off it, it grows and shrinks over time, but it's meant to be a living document. If you're having problems with your tasks being too large and nebulous to appropriately use on a TODO list, then your first task is "break job down into more tasks."

<comment><USER11> > Haven't you ever been working on something and realized there were two > different things that had to be done, but in different directions?

Yes, but who ever needed a TODO to remember that other thing? It's all part of the whole that you're trying to build, you understand what it's going to look like and why you're doing it like this, and of course after this part that other part also still needs doing. You don't need to remember it, it's part of the bigger picture.

I write down reminders for things outside that, like people who wanted to ask a question, mails I need to answer, errands. Things that are hard to keep track of because they're not about the thing you want to be thinking of. The main thing you're trying to make doesn't need them.

The creative process progresses when ideas come out subconscious processes, like when you take a morning shower. Todo lists are very conscious things.

<comment><USER12> I don't know if I fully agree with the GP's idea that this is the canonical definition of a TODO list, but I don't think short-term memory alone is sufficient for the current project in all cases. For the creative process of design I tend to agree you usually don't need to keep notes, but for the creative process of code architecture I think external notes are often necessary, especially if there is any significant refactoring of existing code involved.

</comment></comment></comment></comment><comment><USER13> > Too many projects and too many next actions. It was information overload. I > think my brain couldn't handle my 50-100 ongoing projects and next actions.

IMHO, this isn't a problem with GTD as a system; it's more of a problem with the user's prioritization. Nobody should have to have 50-100 ongoing projects and next actions. Urgent/Important them, and junk the rest.

<comment><USER14> I agree. The whole point of dumping all these things out of your brain and into the system is so that you can let go off all that because you know it's in the system and the system works. If you're still fretting over the list of stuff then you probably don't trust the system. The most likely causes of distrust are 1) you haven't had enough chance to see it working, or 2) you haven't implemented/adapted the system correctly _for you_ and the system _really, actually isn 't working_. Weekly review is a fine place to assess and tune what you're doing in the larger sense, I think.

</comment></comment><comment><USER15> It would have been nice to give any reference to "GTD" in an introductory sentence so that readers don't have to google it and interfer from the context what's meant. [https://en.m.wikipedia.org/wiki/GTD](https://en.m.wikipedia.org/wiki/GTD)

<comment><USER16> Definitely agreed. I feel like I'm the only one who had no idea whether GTD was a product or service or some sort of TO-DO methodology...

</comment></comment><comment><USER17> GTD works fine for creative work when you _get_ GTD. Most people don't. it actually takes quite some time (months/years) to do the needed _click_ and understand what GTD is all about.

</comment><comment><USER18> The part of the "xxx is not for creative work" argument that bothers me is the assumption that "creative work" cannot be organized and planned. Let's call writing, programming, … simply "work," not "creative work," and we have to do them like other kinds of work.

Of course, some parts of everybody's work need more focus/mental energy/physical energy/..., but that doesn't mean they are special and can get away with being disorganized.

Van Morrison once said in an interview that when he has a song to write he simply sits down and works on it, whether he feels like it or not. Are our iOS apps more "creative" than his songs?

<comment><USER19> I agree that everyone needs some way of organizing. But is it really so hard to imagine that many people _hate_ lists of tasks grouped by tag/project on a computer or in a filing system?

I've met so many people who do fine with - to me - the most haphazard, chaotic systems that I hesitate to judge them by _my_ almost OCD-like and definitely autistic obsession with lists. Their brains just work differently.

</comment></comment><comment><USER20> I found GTD and I did not get along. For me, the result was the opposite of its name, or exactly the name if you define "things" to be all the pointless things in life that you shouldn't waste your time with.

I found the important/due date quadrant system espoused by Randy Pausch in his Time Managenent video to be the best way to get important things done. GTD didn't make that distinction and in my experience, it made it worse.

Disclaimer: I know how overzealous I was about GTD when I was using it, and I want to say that I'm not interested in talking about why you think I should try GTD again. I don't want to debate with anyone about GTD. This is only my experience with trying to use it in my life 5 years ago for about a year. It didn't mesh with my goals. I am excited for you if it's served you well, though!

<comment><USER21> Not debating you, asking so I can be aware of the pitfall when I try out GTD: Did you try not tracking the pointless things? Is tracking everything a philosophical aspect of the system?

<comment><USER20> It seemed like tracking the pointless things was the process, and the benefit was that they'd be out of your head. Made total sense in the moment, but looking back I just see it as a very effective psychological defense against real change.

<comment><USER22> Unless you're defining "pointless" incorrectly, you're wrong.

The start of the "inbox processing" step is to decide if something is _worth doing_. That filters the pointless things right at the start. Only then do you do it (if it's less than 2 minutes work), or add it into the rest of the GTD process: Delegate it, or defer it.

</comment></comment></comment></comment><comment><USER23> I read David Allen's book back when the web was at version 2.0 and the one thing that has stuck with me is this: if something is going to take two minutes or less, just do it. That simple rule helped me immensely.

</comment><comment><USER24> I'm a creative fella. I use GTD super heavily, because it lets me manage EVERYTHING in my head - all my creative efforts, in addition to the mundane.

> Most task/to-do software is based around the concept of projects and tasks. > It's really too bad. The tendency is to fill up your task software with > dozens of projects and tasks under each project. But the more you look at > your projects and tasks every day for the next few weeks, it gets > discouraging. It feels like a never-ending river of stress.

These are things that are already open in your head in some way. you put them into a system you trust to get them out of your head, and you review them at varying intervals because they matter to you in some way, at some level.

> The most important thing for the creative innovator is not a ton of tasks to > do but rather the ability to see what's important to focus on and to focus > on that deeply. The creative innovator needs to go deep on a feature or > issue, and the deeper they go the more creativity they unleash.. thus > creating lots of value to the end user.

GTD doesn't stop you from doing this. GTD helps you identify what's important and ensure it gets done.

> Personally, I can't bear the thought of trying to organize my work with > Things for Mac (or similar task management software). Typically, you create > some projects and fill them with tasks, and before you know it you have so > many projects and tasks that it's overwhelming. The whole thing becomes a > distraction and a drag. It makes work less enjoyable.

OK, I might agree with you there. I had abysmal luck in implementing GTD with Things and Omnifocus, so I built my own web app that does what I want: focus on capture, and make review possible from a variety of data points like creation, tags, metadata; even things like tag or word count.

Overall though, this author doesn't know what he's talking about, doesn't understand how to properly implement and manage their GTD, and that is simply NOT GTD's fault. that's theirs. If you're going to make such a bold title that "GTD sucks for creative work" you better back it up with some solid points and alternatives. This author did nothing of the sort.

I will still say: GTD is awesome for creative work. I am easily 5x more creative after learning about GTD. I don't 1:1 implement it, but I take whats useful and discard what I don't, like inbox zero. Although now that i've been booking a lot of appointments via email, I might want to revisit that.

<comment><USER25> Do you have a link to your web app? I'm currently looking through organizational and time management programs.

</comment></comment><comment><USER26> It's a good insight that other systems may complement GTD for driving deep creative focus. Todd Henry covers this very well, both conceptually and tactically, in his book The Accidental Creative. He offers a flexible set of practices that work together as a system to help you put your money where your mouth is in terms of what you say is important in your creative work and how you spend your time and mental energy in light of that. He touches on a lot of the same principles as the OP but in book form. It's a good read and is backed by the author's personal experience and work experience helping others tackle their own creativity and productivity challenges.

One technique relevant to other commenters recognizing that a full task view is not always relevant for creative projects, or least for the creative aspect of projects, is to maintain a project list that focuses on the key challenges or questions that define the creative purpose or problem of the project. Review that regularly and set aside time to tackle the creative challenges. You can always use GTD or any other task list tool to track the concrete tasks generated from those times and work from those lists during pomodoros or heads down execution time. The point is nurturing creativity does require different techniques than task execution, but with some care you can manage it within the constraints of a given day, week, and month. The book says it much better and more comprehensively than I can and is highly recommended reading.

</comment><comment><USER27> I find that often my interest in projects waxes and wanes periodically, and seemingly randomly. I like the organizational ideas of GTD, specifically the getting the ideas out of your head and collecting them into a known place, and breaking down TODOs into components until they're not so large and abstract as to cause paralysis -- but I agree that they can still be overwhelming.

This article made me think of an idea of mitigating the former issue; that is, instead of have a huge list of "next steps" that can cause their own form of analysis paralysis when I'm feeling indecisive, even if they're small and easy, but instead have a mechanism to choose and display a single, randomly chosen item from the list of items.

If I'm not interested in that, I could skip to another one. Otherwise, it catches my fancy and I now have something concrete to work on, without wasting any effort trying to figure out what to do myself.

</comment><comment><USER28> Surely using the Pomodoro technique for creative work will break flow?

</comment><comment><USER29> I use a simplified version of scrum for personal planning, with one day "sprints". Works pretty well.

</comment><comment><USER30> GTD is a great managerial schedule. Creative work needs those 4 hour time boxes and singular mental focus.

</comment><comment><USER31> TODO apps should have an upper-bound on the number of items to force the user to prioritize his tasks.

I noticed a pattern where the _new_ shiny TODO app is adopted. Then it gets filled-up until it becomes depressing to open. Then the _new-new_ TODO apps gets a round of applause. Repeat.

<comment><USER32> This reminds me of something I read a few weeks ago: [http://www.theguardian.com/lifeandstyle/2015/nov/20/oliver-b...](http://www.theguardian.com/lifeandstyle/2015/nov/20/oliver- burkeman-time-to-ditch-to-do-list)

"For us list addicts, Forster proposes a minimalist alternative system. On a piece of paper, write down only the five most important tasks you can think of. Then do them, in order, crossing them off as you go. (If you stop before completing one, add it again at the end.) Once the list is only two items long, add three more, to bring the total back to five. Then repeat.

"The point of this austere approach is that you're regularly required to ask what really needs doing, since there are only five slots. With a conventional list, there are unlimited slots – and it's hugely tempting to plough through inessential tasks, just to cross them off. But what if you forget crucial things, using Forster's method, because you didn't write them down? His response: they probably didn't matter to begin with."

<comment><USER33> There's a nice extension to this idea - maybe someone can reply with the right credit as I've forgotten where I read this:

When the five things are done, you are done. Leisure or family time.

Even if you had a little juice left today, you keep some in the tank for the other parts of your life. This really helps with steady productivity and headspace for the long term.

</comment></comment></comment><comment><USER34> I guess GTD sucks for creative types. The type that thinks that their needs are so special compared to other workers, are very sensitive towards whatever environmental factor makes them _feel bad_ or _discouraged_ , that any kind of externally imposed structure cramps their style, and that they should have the freedom to make up whatever ritual that makes their god-given creative juices flowing. Which are, again, very sensitive to petty environmental distractions.</comment>


A Bolivian Architect's Buildings - <AUTHOR> http://hyperallergic.com/338586/the-vibrant-colors-and-andean-motifs-of-a-bolivian-architects-buildings/ <comment><USER2> Bolivia's capital city, La Paz, is striking-looking too: [https://en.wikipedia.org/wiki/La_Paz](https://en.wikipedia.org/wiki/La_Paz)

</comment><comment><USER3> This looks like ANSI art from the early 90s</comment>


Ask HN: Tool to scan site for web guidelines/checklist? - <AUTHOR>

Hi,
We are thinking of implementing a checklist for all our pages. We want to go through each page of the site and check if they confirm to our standards. For eg, if each <a> tag has proper title, <img> src is not broken; meta tags are proper, no 404 issues with page dependencies etc.
Is there such a tool that does all this automatically? <comment> Lorenz-Kraft Hi, i'm currently developing such a tool in my spare time for quality check automation for my own projects. Currently its a desktop app build onto nw.js. So Linux/Mac/Win are supported. Right now i drifted away for further checks like SEO. I wonder if there is a market for such a tool. Would you buy such a tool? Maybe "Parts" of the tool like "SEO Check", "Structure Check", "W3C Check"?

<comment><AUTHOR> I would definetly pay for it. I wonder why you are doing desktop. Wouldn't web base make more sense and more lucrative ?

<comment> Lorenz-Kraft Hi and thank you for your reply. We might get in contact and you might be my first beta tester, if you like to.

The decision for a Desktop App were the following: \- i don't like the cloud \- Access to internal projects (like on "localhost) which are not accessible via Internet \- No Limit (expect your own (CPU & Bandwidth) and your server to test (mostly bandwidth)).

You might be right that such a tool on the web might be more lucrative, but for a developer, it also seem to be more hindering.

As soon as this tool runs on a server, i have to keep track of bandwidth and cpu on the server. The will probably lead to crawling queues and such and this will lead to waiting for the user. This isn't a problem for a working website, but imagine you are just before a website launch and your checking will take one or two days before it even gets started.

Or if your are a SEO Person and like to show your customer right now the results of a complete SEO Analyse within a minute.

Right now, my tool is very fast and can be adjusted to your needs. Mostly, its limited by your own CPU, Bandwidth and pages of your website. You can, if the circumstances are ok, crawl and analyze 1000 Website Pages within a minute... If you need it, you can even do a load test with it ... this actually brought my server down on my first attempt, so Load-Testing became an additional service of my tool.

Would be nice to hear from you if you like to test my tool and give some feedback.

Greets,

Chris

<comment><AUTHOR> Hi Chris, pls keep me updated whenever beta of your product is available. My email logibly at gmail dot com.

</comment></comment></comment></comment><comment><USER2> [https://github.com/validator/validator](https://github.com/validator/validator), can probably be extended for things like 404 checking</comment>


Argentina Raises Export Taxes to Fund New Government's Spending - <AUTHOR> https://www.bloomberg.com/news/articles/2019-12-14/argentina-boosts-export-taxes-to-fund-spending-under-fernandez <comment><USER2> Again the same methodology who will kill the only productive industry in the country.</comment>


Show HN: Poto – leave Facebook, keep in touch with your friends and family - <AUTHOR> https://poto.app/ <comment><AUTHOR> Hi everyone,

Poto lets you easily share contact details with friends and family.

It's difficult to leave Facebook as it's often the only way to reliably contact people. I created Poto to change that, to act as a universal address book, without people needing to be on Facebook.

Because users control and update their own details on Poto, you don't have to manually add all the details of your friends and family. And you automatically have the latest contact details when they're updated so you can stay in touch.

Enjoy! And I'd love to hear any thoughts and feedback.

Best, James

<comment><USER2> I don't see what it does or how it does it, why would I signup?

<comment><AUTHOR> Aha. Thanks for the feedback.

Do you mind saying what's unclear to you or what part of the homepage is unclear? Would a screenshot on the homepage help?

I think I may have overlooked this because it's such a simple product. You add your contact details, and you can make them visible to other users on Poto who you want to share contact details with.</comment></comment></comment>


Show HN: Dddraft – a fast and beautiful publishing tool - <AUTHOR> http://dddraft.com

<comment><USER2> Give me CommonMark and I'm in. No not really I will just forget to publish content like I always do.

</comment><comment><USER3> Give me Github Flavored Markdown and I'm in.

</comment><comment><USER4> Give me Publish to Wordpress and I'm in.

</comment><comment><USER5> Give me Mathjax and I'm in.

</comment><comment><USER6> This is perfect</comment>


WebAssembly Raytracer - <AUTHOR> https://sniklaus.com/blog/raytracer <comment><USER2> The JS version is slow in Firefox because of a silly perf cliff, I filed a bug [0]. A quick fix for that improves the JS version from ~400 ms to ~180 ms for me locally. ~140 ms if I disable the Nightly-only GC poisoning.

edit: the JS code is a bit buggy: it does |if (Math.abs(dblDiscriminant) < 0.01)| in the |intersection| function, but dblDiscriminant is a var set in the next loop! Math.abs(undefined) is something we can easily optimize in the JIT, but really the JS code is broken. Folding this in our JIT [1] improves this to < 130 ms for me.

Please let us know if you run into JS perf problems, these bugs are usually easy to fix.

[0] [https://bugzilla.mozilla.org/show_bug.cgi?id=1425687](https://bugzilla.mozilla.org/show_bug.cgi?id=1425687)

[1] [https://pastebin.com/CzfP5vQj](https://pastebin.com/CzfP5vQj)

<comment><USER3> Thank you for your evaluation! It should have been _dblDenominator_ instead of _dblDiscriminant_ and I fixed it accordingly. However, this change does not seem to significantly affect performance.

</comment></comment><comment><USER4> I made a Path-tracer (photorealistic algorithm) in pure JS four years ago: [http://renderer.ivank.net/](http://renderer.ivank.net/)

It rendered this image: [http://renderer.ivank.net/balls.jpg](http://renderer.ivank.net/balls.jpg) :)

I also made the "full" 3D game: [http://powerstones.ivank.net/](http://powerstones.ivank.net/) (uses a GLSL shader).

<comment><USER5> The 3D game doesn't work for me, when I hit play all I get is a white screen with light pink/teal/yellow coloured pixels/blocks flickering at the top of the screen. I'm on an intel integrated graphics.

<comment><USER6> Worked fine for me in Windows 10, FF57, using Intel integrated graphics. Things were noisy-looking, and I'm not sure of that's just part of the game aesthetic, or what.

<comment><USER7> It's how Ray traced images look until you give then long enough to smooth out.

</comment></comment></comment></comment><comment><USER8> Firefox really benefits from WebASM: the time per frame is ~90ms on my machine whereas the JS version is close to 400ms or so.

On the other hand, on Chrome the WebASM performance is ~100ms and JS is just a tiny bit slower at around 120ms!

<comment><USER9> But would adding antialiasing kill the performance? It's a small thing, but it's kind of like a movie where you can totally suspend disbelief and one bad actor or effect jolts you out it.

<comment><USER8> Well, sure, but so would rendering at a more reasonable resolution, or a more realistic scene than five spheres on a plane. And it's not like 10fps is a useful frame rate in the first place. But it's the relative, not absolute, performance figures that are interesting here.

<comment><USER10> > And it's not like 10fps is a useful frame rate in the first place.

How times have changed. I remember running flight sims back in the 16-bit era (Amiga 500, for example) when 10fps would have been considered pretty good, especially if there was a lot going on.

But yes, I think nowadays you're right: 60fps or bust. And this is really why ray-tracing isn't used that much in games - it's just so computationally expensive.

</comment></comment></comment></comment><comment><USER11> On my desktop:

Firefox: JavaScript ~372ms, asm ~121ms, WebAssembly ~91ms, Shader ~0.1ms

Chrome: JavaScript ~115ms, asm ~150ms, WebAssembly ~105ms, Shader ~0.1ms

Edge: JavaScript ~3340ms , asm ~(230-240)ms, WebAssembly ~(160-180)ms, Shader: Broken

IE11: Broken.

Interesting values.....

<comment><USER12> Doesn't work for me at all in Edge (v41.16299.15.0). Are you on an Insider Preview?

</comment></comment><comment><USER13> Shader is broken on both android chrome and ff.

These work fine:

[https://www.shadertoy.com/view/4tyXDR](https://www.shadertoy.com/view/4tyXDR)

[https://www.shadertoy.com/view/4sXGDs](https://www.shadertoy.com/view/4sXGDs)

[https://www.shadertoy.com/view/4dsGRn](https://www.shadertoy.com/view/4dsGRn)

[https://www.shadertoy.com/view/4lB3D1](https://www.shadertoy.com/view/4lB3D1)

<comment><USER14> Might depend on your device, the shader mode worked fine on my nvidia shield, but is broken on my nexus 5x.

<comment><USER3> I unfortunately had a bug in my code that I just fixed. It should work now, unless you encounter the bug that has been discussed here: [https://github.com/mrdoob/three.js/issues/9716](https://github.com/mrdoob/three.js/issues/9716)

</comment></comment></comment><comment><USER15> Interesting that there is a 1000x speed difference (0.1 vs 100 ms, in Chrome) between the shader and the JS/WebASM versions even with just Intel integrated graphics.

<comment><USER16> Even after working with them for a while, GPUs still feel like cheating. They are just so goddamn good at what they do.

That kind of speed up isn't just a fluke here, it's pretty normal when your work aligns with what a GPU does best.

<comment><USER17> They're really fast even if you're sort of abusing them. Using fragment shaders to render entire scenes ("two triangle" style) probably wasn't what GPUs were built to do but the technique is awfully effective.

I mean: [https://www.shadertoy.com/view/Mt2yzK](https://www.shadertoy.com/view/Mt2yzK)

</comment></comment></comment><comment><USER18> Is there a resource to learn WebAssembly?

I don't mean how to use a tool chain to compile higher level languages to WASM. I mean how to write the linear assembly bytecode as seen here on Wikipedia:

[https://en.wikipedia.org/wiki/WebAssembly#Representation](https://en.wikipedia.org/wiki/WebAssembly#Representation)

<comment><USER19> I went straight to the spec personally; it's quite readable and shorter than I expected.

<comment><USER18> Where is it?

<comment><USER20> [http://webassembly.org](http://webassembly.org)

</comment></comment></comment></comment><comment><USER21> the shader version is the fastest, but looks like modern art on my smartphone.

Like someone scribbled the colors over the circles instead of filling them.

<comment><USER22> This is probably the culprit: [https://github.com/sniklaus/experiment- raytracer/blob/master...](https://github.com/sniklaus/experiment- raytracer/blob/master/shader.js#L11)

It declares that floats should only be medium precision by default, but those precision specifiers are only followed on mobile platforms.

Desktop WebGL implementations just promote everything to high precision so that kind of bug is invisible until you test on mobile.

<comment><USER3> Thank you for pointing it out, I fixed it by now. :)

<comment><USER7> Fixed for me. Nice work

</comment></comment></comment></comment><comment><USER23> When WASM only give's a 10% increase in performance, is it really worth it ? While at the same time using "hardware" shaders gives 1000% increase in performance. If the goal of WASM is not performance, what is the reasoning behind it ? That you would be able to compile any!? program to be run in the browser !?

<comment><USER24> This might not be best way measure wasm performance. WebAssembly can be 2-5x fater than JavaScript.

Not to forget wasm is in very early stage, once we get threading support([https://github.com/WebAssembly/threads](https://github.com/WebAssembly/threads)) we can get much better results.

</comment></comment><comment><USER25> Wow, Chrome is able to run the Shader on my Intel integrated graphics on Wayland in Ubuntu 17.10

Colo(u)r me impressed.

I'm getting 0.1 versus 125 for WebAsm versus ASM.js/JS of ~210 – kind of crazy that Chrome can run plain JS as fast as ASM.js (or is it?)

Firefox (57) can't run Shader unless there's some under the hood option I have to turn on …

<comment><USER26> I'm using Firefox 58 beta on macOS with Intel graphics and the Shader version works for me. Maybe WebGL is disabled in your set up. Some drivers and driver versions are blocklisted to avoid instability:

[https://developer.mozilla.org/en- US/docs/Mozilla/QA/Graphics...](https://developer.mozilla.org/en- US/docs/Mozilla/QA/Graphics_Blocklisting)

The graphics section in about:support might tell you your WebGL status.

</comment></comment><comment><USER27> A little beside the point, but I _love_ the real-time distribution visualisation with the boxplot.

<comment><USER3> Thank you for your kind words. I borrowed the idea from a previous project in which curious students could evaluate the computational performance of their various implementation using a similar plot: [https://github.com/sniklaus/teaching- minichess](https://github.com/sniklaus/teaching-minichess)

</comment></comment><comment><USER28> a raytracer in JS: ~407.3 ms and in WASM: ~87.4 ms and in GLSL: ~0.17 ms

[https://www.reddit.com/r/programming/comments/7k4v5t/a_raytr...](https://www.reddit.com/r/programming/comments/7k4v5t/a_raytracer_in_js_4073_ms_and_in_wasm_874_ms_and/)

<comment><USER3> This is where I answered most of the questions. I didn't even see that someone posted it here as well. Thanks!

</comment></comment><comment><USER29> I had no idea ray tracers can be written with such concise and clean code. the results are amazing too. lesson learnt: JavaScript is extremely fast on chrome, 6 times slower than WASM in Firefox and GPU shaders are still faster by a factor of 1000!!

<comment><USER3> If you give up having clean code, you can even fit a raytracer on a business card: [http://fabiensanglard.net/rayTracing_back_of_business_card/](http://fabiensanglard.net/rayTracing_back_of_business_card/)

</comment></comment><comment><USER30> Hmmm:

JavaScript 106.8

asm.js 140.0

WebAssembly 88.4

Shader 0.1

Just a Dell 13 inspiron laptop with latest Chrome 63.

<comment><USER31> Seeing the same with Chromium on my Linux machine. In Firefox the JS version is really slow, as you would expect.

It's kind of hard to judge this without having a decent enough look at the code, or how it is being benchmarked. For example, asm.js requires quite a bit of set-up to intialise; if it's restarted from scratch every loop for benchmarking purposes that would mess up the timing.</comment></comment>


"Programmer. Come Work For Us" - <AUTHOR> http://x.myles.io/13hGtJR <comment><USER2> Developers are an extremely varied bunch. I'd suspect that HN leans towards the wide interests side because startups tend to disrupt (in the traditional sense of the word) your ability to program rather than enhance it.

But not everyone is like that. Some developers want nothing more than a real, meaty technical challenge. Scaling up a site that's crashing every hour. Crunching huge datasets and extracting important data. If you find one, you might actually be lucky- they probably have more focus than I do.

<comment><USER3> Personally, while the whole starting a business idea seems pretty cool to me, it's just far too grand, far too difficult and far too expensive right now!

I'm 20, I want to go to my simple 9 to 5 job, tackle a really difficult challenge, maybe debug some Magento because that's where the real challenge is at my company, then maybe for the last couple of hours I'll work on some of our in house products to enjoy the freedom of custom development.

Then I'll go home, make something to eat (at a reasonable hour) and hopefully spend a great night cuddling with my girlfriend while we watch old movies on my laptop.

While being a billionaire business man is very enticing, right now, at this point in my life, all I want is to be happy, and working 80 hour weeks to risk it on a 3% chance to make it something amazing just isn't worth it for it.

<comment><USER2> The one counter-argument I'd give to that is that you'll never have more time or freedom than you do right now. If you're interested in starting a business, don't feel any rush to do it immediately, but your twenties are a great time to try it.

But don't get trapped working for a startup and kidding yourself that their success is your success. If it isn't your company you probably don't own a meaningful amount of stock- it's never worth busting your gut over.

<comment><USER4> Twenties does seem a great time to start a business, but somehow in real statistics the average age when successful entrepreneurs start their companies is 40+. You won't have more time, but you will have more resources, skills, and in-depth understanding of some problem domain, which is a key part of any successful business.

<comment><USER5> What would be neat to see is how many of those 40+ success stories had failed businesses in their twenties.

<comment><USER4> I can't remember the source now, but IIRC the actual measurement was the age when they founded their _first_ company. But quite a few of them by that time had hands-on business experience managing businesses owned by others.

<comment><USER5> Thanks for the update. Though it would still be intriguing to see how past business failures affect future successes. Is it better to try and fail in your 20s, or not try at all until you are 40+, for instance? I wonder if that kind of data is available anywhere?

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> _"Programmer: I'll be forced to learn things outside of programming. Things like how to design, how to market and how to do customer service.

MBA: But you, are a programmer.

Programmer: I'm also a person. Programming is just one thing I do."_

I graduated in business administration, and when I tell people I can actually code and have been learning how to do it for the past few years, I mostly get blank stares, which is sometimes followed by the question: _"why do you learn it if you ain't a programmer? You should hire a programmer instead."_

They don't get it when I explain that the programmer I would need to do the work I want done wouldn't need me as much as I would need him. They also question me why didn't I graduate in something related to programming instead of BA, as if studying something outside of your area of expertise is waste.

<comment><USER7> I once had a job interview for a programming job in which I was asked about the several (programming-related) publications I had listed on my resume.

"Why did you do this? It looks like you want to be a writer, not a programmer!"

I find it hard to imagine being so consumed with programming that you don't do anything else at all, even things that are related to, but not actually, programming. But even harder to imagine is why anyone would expect someone to be that consumed with only programming?

<comment><USER8> At my current job, it seems like I am constantly being pressured into being a "systems engineer" or somesuch. The fact of the matter is, I really love writing code, finding and fixing bugs, and just generally all around playing with software. I can appreciate, and am even very interested in, things such as hardware, materials science, physics, chemistry, etc. But there is more than enough for one lifetime (multiple lifetimes!) in software, and I just find it so cool that I don't want to do much else. Don't get me wrong; outside of work I'm an amateur musician and a volunteer SAR member. I also appreciate stretching your mind, getting a different POV and cross-training, etc, etc, but as long as people are willing to pay me to make software, that's the job I'll continue to do. Try to push me into something I'm not interested in, and you'll have to find another code monkey. I'll dive into wildly differing domains, but mainly so I can tackle them better in software.

</comment></comment></comment><comment><USER9> > _Yes. But when I affect someone's life, I'll get a email, maybe a call about > it, and I'll have a real conversation with someone. I'll know who they are > and how I affected them._

And a few hundred 1-star reviews on the app store(s), saying that while they use your app daily, it _really_ isn't worth the $1.99 they paid for, and people should use X instead, which is FREE. Or 3-star reviews that say the app is PERFECT, they love it, but it needs feature X (assuring you that they'll bump up their reviews to 5 star when you add the said feature).

At times like that, I'm sure you'd rather you worked for some giant corporation and didn't have to deal with customers directly.

<comment><USER10> You're making a pretty big assumption that everyone works in consumer-facing markets, and not with small- to medium-sized businesses.

The app store model is broken because it has too much Internet in it. Anonymity + Platform = arsehat. Dealing with clients one-on-one is really rewarding.

<comment><USER11> Clients can be rewarding or a nightmare. I have dealt with both. There are good and bad clients you deal with just as there are "arsehats" in the consumer facing businesses.

</comment></comment></comment><comment><USER12> I wish this was an accurate mindset of the kinds of programmers I have to work with. Sometimes I picture myself tying my scarf around my head, leaping onto my desk and screaming "Come on! Lets go! F--k this place, we can do it better than they do it. You don't have to sit here day-in, day-out doing the same monotonous things. We can do better this, we owe it to ourselves to do this properly. No more people in suits ranting about deadlines, no more shitty coffee, no more PowerPoint. We'll do it better, we'll do it cleverer and you will feel so much the lighter for it. To the door!"

But they'd just stare at me in horror.

<comment><USER13> _But they'd just stare at me in horror_

Maybe try without the scarf?

<comment><USER14> I think you should do it, with the scarf. You never really know what will happen until you try.

<comment><USER15> Once with the scarf, once without, and compare results.

<comment><USER14> AB testing. Nice.

<comment><USER16> You'll need a project manager for that.

</comment></comment></comment></comment></comment></comment><comment><USER17> > _How quaint._

Perhaps the best way to describe the condescending startup hiring culture where aspirational devs are encouraged to give up their dreams to work for yet another VC funded rocket ship that is "changing the world."

Another recent article with this attitude:

[http://pandodaily.com/2013/01/01/your-2013-resolution- come-t...](http://pandodaily.com/2013/01/01/your-2013-resolution-come-to- terms-with-being-only-an-engineer/)

My guess is developers are starting to see through this BS and realize that they very well _can_ run their own companies.

<comment><USER18> > My guess is developers are starting to see through this BS and realize that > they very well can run their own companies.

A tiny, tiny, minority that is well represented on this site. In reality most developers out there have no clue how to run or startup a business and they frankly shouldn't because they will fail.

<comment><USER19> I think failing a business is good life experience, especially for programmers, since the starting costs are relatively very low.

<comment><USER18> A failed startup is a great learning experience but when you're not ready for it or don't learn from it, it becomes less of a benefit and more of a poor choice. Having said that the circumstances one must be in to startup his or her own business are very specific.

> since the starting costs are relatively very low

I'd have to disagree. Unless you're weighing "cost" on just monetary value. A startup will cost you your free time, your health, your current career, and in some cases your relationship if you have one. Truly being successful in the startup world is extremely challenging and one that comes at many costs.

</comment></comment></comment></comment><comment><USER20> Kinda true BUT....

Maybe you'd be surprised how many programmers there are out there who don't care if anyone uses what they do, don't want to interact with users and aren't really bothered who it affects, and would rather be left alone with the purity of "here is a task, go, be a programmer".

I'm not like that _now_ , but I used to be, and I know a lot of people that still are. All that messy stuff like business decisions, market research/development, customer support, requirements capture... all that is so much more soft and ill defined than me, my DE, a defined goal (that I may or may not have helped set) and a paycheck at the end of it. Then I don't have to think about anything but the code.

<comment><USER21> I broadly agree with you, but I can't help but feel that you're patronizing the position needlessly.

I think it's perfectly respectable for someone to care if anyone uses what they do and to want to interact with users and care if their problems are solved - but, at the same time, desiring to do this within an order of magnitude of 40 hours a week, receive benefits, not have to worry about paying the bills, even if the client can't be bothered to, don't have to deal with the nitty-gritty of sales and bookkeeping and boardmeetings and fundraising and the landlord and sourcing a new datacenter[1] and dealing with the ISP[1] and making sure the Jenkins box is keeping up with backups[1] etc etc.

The career options for a developer (especially a good one) is a broad spectrum of opportunities, not just a black and white selection between the machine room of a bank or your own startup.

Edit: 1: Unless that's what you want to do.

<comment><USER20> I certainly didn't mean to come across as patronising, sorry about that, it's a mindset I've been in and one I sympathise with and frankly one I'm tempted to go back to.

It's really nice to have only(!) the technical challenges laid out in front of you and not have to deal with the business fluff.

</comment></comment></comment><comment><USER22> Where exactly are the programmers of which this article alludes? I recently received seed funding for my next startup (<http://www.podaris.com/jobs.php>), and am finding hiring developers to be extremely difficult. Yes, the work will be extremely diverse, you'll get to interact directly with customers, and you'll get to shape and take significant equity a product which can genuinely change the world -- but most developers out there don't seem to be looking for that. So far, 99% of the developers I've encountered have fit into one of two categories:

1.) Freelancers, who are committing to remaining so because of the lifestyle perks -- they want to be able to bugger off to that Australian walkabout more or less whenever they feel like it -- and the level of commitment which a startup requires just isn't appealing to them.

2.) 9-to-5ers, who want the safety and security of job with a large corporation or agency, and really don't mind dealing with the world through a dashboard.

I can understand where both types of people are coming from, and can't fault them for it. What I _haven't_ found is an abundance of developers who have the appetite for the high-commitment, high-uncertainty life which a startup entails.

<comment><USER23> I think you answered your question yourself.

The guys who want to do it all are all busy doing it all. Notice the quote in the linked article: "I was actually thinking of starting my own business." That's what those guys are doing.

If you're looking for somebody who's motivated to run every aspect of a business, but would prefer to run every aspect of _your_ business rather than one in which he'd get 100% of everything, then yes, you're going to have a tough time of it.

I'd recommend hiring one of those Australian Walkabout guys on their terms. They're probably just as capable of doing what you want done, and they don't come with any unrealistic expectations of what you'll give them. Pay them money in exchange for work until you either don't need them anymore or the money runs out. Then let them go with no hard feelings on either side.

<comment><USER22> Well, I'm certainly not looking for somebody to run "every aspect" of my business. I've raised the finance, developed the marketing plan, established contacts with almost a thousand prospective client organisations, defined the product requirements in consultation with the industry, and written the prototype software myself. That's taken years of work and is not something to sneeze at! But ultimately, I'm _not_ a skilled developer, and my cobbled- together prototype is not something that can be taken to market. So a lot of programming will be required to turn this into commercial-quality software.

The reason that I won't hire contractors to do that is that this is a highly specialised application -- not something that fits the mould of a typical web application -- and the developers will be instrumental in developing the core IP. It will take a few months for even the most skilled and experienced developer to get up to get fully up to speed with the internals details of this truly unique platform, and there will need to be many iterations of the platform as the product evolves. While it may be possible to do some of the peripheral work with freelancers (eg., the UI stuff, which will use fairly standard kit wherever possible), the unique core of the platform will only be maintainable if there is a stable team of developers to maintain it.

Imagine if Google had tried to design and implement Pagerank, the Google File System, and its custom server architecture using catch-as-catch-can freelancers. That would have been a catastrophe; you just can't develop truly unique systems that way. I'm in roughly the same boat.

However, if anything about what I've said has given the impression that I want people to "run every aspect of my business", then I am obviously not conveying my message clearly. I welcome suggestions for improvement!

<comment><USER23> I think you might be overstating the flakiness of independent contractors. I'm pretty much the exemplar of your "catch as catch can" type (though I've never called myself a freelancer), but I've had my share of long-term clients.

I've had recurring stints with individual companies (with the aforemention bugger-off-to-Australia period in between when they didn't need me) spread out over the course of several years, and I've had multi-year contracts working 40 hour weeks building Big Things.

The important bit that you might be missing is that it's generally the project owner who determines the length of the engagement. A pro will stick around as long as you need him. _Then_ he'll take off and enjoy those lifestyle perks. Find some of that guy and you won't have any trouble getting your PagerankFileSystem finished.

<comment><USER22> It's not really "flakiness" that concerns me -- it's "ownership". I need people who will take genuine ownership of the central pieces of the platform -- who will design and implement the architecture of the platform, carefully follow its performance as the product and the market matures, and make improvements accordingly. That requires being in the same room with myself and the rest of the development team, until the product reaches a stage of stability and self-documentation that others can slip into that role with relative ease.

Based on my prior experience starting software companies (this will be my third), I know that the developers team will need to be working fulltime on this (well, evenings, weekends, and holidays excluded...), in the same room as the rest of the development team. And I estimate this shakedown period will last 2-3 years -- _not_ freelance time, any way you cut it.

Again, this is really not meant to be a slight upon freelancers. They can be excellent at what they do. But I would never ask one to take a critical role in developing unique, cutting-edge IP in what I am certain will be a long-term evolutionary process.

<comment><USER24> It sounds like you want an employee / contractor who will act like an owner. If you want this level of commitment from someone very good, you usually have to give them part of your company. And I don't mean just options and profit sharing; I mean partners or shareholders.

Even then it is difficult, because you already have invested years in this, so obviously anyone you bring on will be a minority stakeholder. As a minority holder, they will have no real say-so in the business (you can always override them in a disagreement), they have liability they wouldn't have as a contractor / employee, and there probably will not be any profit to share for a long time. And even when there is profit, you get to decide what to do with it - not them. And you get the added burden of not screwing over your new minority holder, at least not too much.

Try putting yourself in their shoes: let's say a programmer has invested 3 years in writing a cool new program and has developed "cutting-edge IP". But they have no marketing or business experience. You do. What would you want from this guy to dedicate 3 years of your life to him and _his_ company in a "critical role", and "take genuine ownership" for developing his business? (The quotes are not there to be snippy, but to use your own words to describe what you are looking for.)

<comment><USER22> No, I want a CTO, and certainly _not_ a contractor who will act like an owner. (I've said many times in this thread that I am _not_ looking for contractors, and state on the jobs page that I'm seeking full-time permanent employees).

To answer your question: what I'd want is a stake in the equity and governance of the company. These things aren't unusual when joining a new company, and in my prior two ventures (futurescaper.com, imatest.com), I've hired both CTOs and CEOs without difficulty, and successfully integrated them into the governance of the companies.

Somehow, this time around, my recruiting efforts seem to be generating a crazy number of misunderstandings. People assume that I'm looking for contractors (I'm not). People assume that I won't be paying competitive salaries (I will be). People assume that I won't be giving away equity (I will be). People assume that I won't be including officers of the company in its governance (I will be). And people make these assumptions even when my job descriptions explicitly say otherwise. I'm baffled by this, since I haven't encountered these presumptions with my prior startups.

I'm starting to wonder if developers in the web application space have perhaps been so badly burned by prior startup experiences that at this point they basically presume bad faith from any new venture they encounter. If so, that's really unfortunate, and I guess there's nothing I can do about it except either A.) hide the fact that I'm a startup (which would hardly be honest), or B.) Accept that that 90% of prospective candidates will weed themselves out simply by making bad assumptions, and realise that I probably didn't want those people anyway.

Also, I have to say that this experience is also starting to really warm me up to recruiters, who presumably are more skilled than I at dealing with the sort of industry dynamics that lead to these kind of misunderstandings.

</comment></comment></comment></comment></comment></comment></comment><comment><USER25> Entrepreneurship fluff. These posts seem to forget the reality of life. What about health care? House payments? The cost of raising children? The social network job will allow for those. The business? Good luck with that. Oh, but you might get some funding, you say? Try explaining to a VC how you are using _their_ money to pay for _your_ children. Many of them don't even want you to have base salary.

<comment><USER26> These posts are written by 20-somethings that don't have children or thing about health care.

</comment></comment><comment> B-Con > I'm also a person. Programming is just one thing I do.

This is not universally true. Yes, we're all people, but some people don't want to serve as tech support, marketing, etc, themselves. Some people just want to show up and work in a specific, technical problem.

HN isn't filled with that type, I don't think, but they certainly do exist. And I'd guess they're the majority, too.

<comment><USER27> A lot of this depends on timing. My interest in doing more than solving a bunch of meaty technical problems (where doing more includes managing a team, speaking to people, customer service) follows a sort of sine wave pattern.

Sometimes for 6-12 months all I want to do is immerse myself in programming. Other times I want to "change the world."

</comment></comment><comment><USER28> You can affect people's lives even if working at Big Corp X.

Often, you can ask to do more things than programming at Big Corp X, if you show interest and are valued as an employee.

Not every Big Corp X. deals with social networks for alien life forms on earth : there are big corps X developing medical devices, airplanes and space vehicles, public infrastructure, or researching new, game changing technology.

A lot of people working at Big (or Medium/Small) Corp X. are passionate about their work.

I agree that by doing your own thing you have a much more direct impact on the result, but I don't think there is such a manichean and romantic division.

<comment><USER29> >there are big corps X developing medical devices, airplanes and space vehicles, public infrastructure, or researching new, game changing technology.

Please let this always be true. I don't want to get into software if it's just gonna be webapps, not that those aren't cool, but I don't know if I like it much.

</comment></comment><comment><USER30> I work at Coursera now, and we have tens of thousands of users in each class. Like the post author, I really like to feel connected to users, to feel that individual connection, so I go out of my way to get that by wandering around the support forums and monitoring Twitter mentions. Every once in a while, I run into people I know too, and the world feels that much smaller. :-) So, yes, it's easy to feel disconnected from people when you work on a product with many users, but if you want to, I think there's often a way to find them.

<comment><USER31> This is exactly what I do as well, and it works quite well. It's also one of my favorite parts about running a small company, and I think I'd like to make it a policy that programmers should interact directly with the customers at least sometimes.

</comment></comment><comment><USER32> I've worked in very large companies, small companies and I'm now in a 4-man startup. At the end of the day it's about the environment and challenges you enjoy, and the ways in which you want to grow. Some people get a kick out of being a tiny cog in a huge, complex and influential machine, and others would rather that their tiny cog be the _only_ (and therefore largest, and most important) cog. You can use a fish/pond based analogy if you prefer.

</comment><comment><USER33> Why on Earth is this linking to some shortener rather than to the actual page, <http://edu.mkrecny.com/thoughts/programmer-come-work-for-us> ?

<comment><USER34> Presumably because the submitter's username is also the domain, so by using a link shortener he can hide the fact that it was submitted by the author.

</comment></comment><comment><USER35> Yay! Everyone start their own company! I mean why not? Who needs salaried work? It's just so easy and risk-free if you already know how to program!

Come on now, start a company when you've identified a problem that really needs a fix, and that has a huge potential of profit. A great way to find that problem is in a paid position. Starting a company for the sake of starting a company won't get you anywhere.

<comment><USER36> I'd started my own company at one point, and utterly failed at it... didn't enjoy it at all, and it wasn't at all freeing.. in fact I never felt more constrained.

I also spent 8 months in a Director level position, managing several teams and several projects. Also much more constrained. Though, I did learn that there is far more mediocrity in the majority of programmers than greatness at that time.

Now, I'm much more about putting in my time, making the projects I work on better when I leave than when I start. I enjoy contract work as I get to learn new things constantly (domain knowledge in diverse cultures), which to me is a lot of fun. Right now, I'm working for an internal development operations group, which means creating services for other development groups... It's interesting for the moment, though I'm enjoying the slower pace so far.

I spent the last year and a half before where I am working on changing the environment of a set of very stale projects that had become maintenance nightmares, and bringing them into more current structures. Enhancing the UI as well as simplifying other systems. It really depends.

</comment></comment><comment><USER37> I couldn't agree with this more. Unfortunately, for every "I am a person" developer out there, there are 2-3 "all I care about is code" developer. It's depressing.

<comment><USER38> I'm not sure why it's depressing that someone would enjoy coding and not business + coding. Some people tend towards specialism, some generalism. It's probably good that we have both sorts of people.

Me, I'm a specialist at heart - I have no interest at all in business. All I want in the world is for someone to come to me with an interesting problem to solve, and to help them solve it. Fortunately, I have that, and I get plenty of enjoyable interaction from helping less technically able (but more customer-focused) people to produce what they want to produce.

Classifying specialists as not-people is condescending and pathetic, every bit as much as it would be for someone like me to dismiss generalists as morons because of their lack of technical depth.

<comment><USER39> And don't forget about people who don't like to specialize, yet wouldn't like to be anywhere near business administration. The idea of being _only_ a programmer seems to me as depressing as running a business. It's just not for me; there are a ton of things to learn, and I prefer those that stimulate my brain before anything that stimulates my wallet (and yes, business administration may stimulate someone's brain, just not me).

I prefer to have a 9-to-5 job that pays the bills and then, back home, study anything else.

</comment></comment></comment><comment><USER40> This shit comes from the fact the industry consider tech-savvy people like inhuman monsters. Nerds and geeks and otakus and such, are considered like a plague, while in fact there were pioneers.

Computing is still considered like magic, and it will stay like that for a long time.

</comment><comment><USER41> I love the ending! "I'm also a person. Programming is just one thing I do."

I'm a programmer, but creating a product of their own is difficult and I commend those that do so. I've learned while doing my projects that aside from programming, I need to be...

An Investor...investing money into hardware, but MOST importantly, time. Time to code, to learn, and time from work and for family.

My Own Boss...doesn't mean I don't answer to anyone, it means I need to be harder on myself to get *ish done, because there is no team to offload work on.

Open-minded...even though working a 9-5 would allow me to specialize in a specific area and a lovely paycheck bi-weekly, my projects/businesses required that I learn so many new things that it's continually frustrating and irritating. Ex: filing articles of incorporation, learning photoshop (I was strictly a coder), micromanaging lists of tasks, formulate a way to pay the bills while donating time to my projects (emphasis on donating).

Side Note: Even though at times I may get jealous of my peers that I know that work at Google and the state...there's a fire inside me burning, just knowing that I will be something big, and I am my only true investor...programming IS just one of the things I do.

</comment><comment><USER42> Work "for" us? How about work "with" us?

<comment><USER43> The work FOR us theme is present throughout. I'd guess it was intentional...

</comment></comment><comment><USER44> I'm young (in the scheme of life).

But I think the quicker you learn what's truly important to you, you start to spend more time on those projects/with those people/in that place/etc and you feel more fulfilled, and that you're making more of an impact, than you ever did before.

<comment><USER26> Then you learn that all places are terrible and become an old grumpy man (in the scheme of life) like me.

<comment><USER44> I suppose that's one option. :)

</comment></comment></comment><comment><USER45> This is how I see myself, too.

I will just continue reading and doing things by my own will until somebody finally realises that domain dependent thinking is rarely innovative and that they might be able to get a competitive advantage from utilising the broad- range of expertise I am trying to grow.

Everybody is different; some of us require variety to focus; and some of us get-off on bridging gaps in between disparate domains.

</comment><comment><USER43> This has been my experience with recruiters but once you get past the wall of pleasantries and fake attitudes, they usually talk with more sense.

Edit: Sibling comments are talking a lot about the author's personal motivating factors but are ignoring the bigger message of poor hiring tactics like repeating talking points and marginalizing personal goals. I got you, though, op.

</comment><comment><USER46> Haha. This would be great compared to emails headhunters like to send.

"Come work for a company we won't mention here. You will need all of these skills: ...

Interested?"

</comment><comment><USER47> One thing I learned from an honest manager: He felt his managerial position was more at risk than his position as a developer.

</comment><comment><USER48> It's an interesting interpretation of the fields of marketing and customer service to lead one to believe it would be desirable to do more work in those roles and less work in software engineering. To each, their own.

</comment><comment><USER49> This is why I pushed to have my company fly me across the country to an client event we're doing. I've been working here for a year but I've never met a single person who uses the code I write on a daily basis.

</comment><comment><USER50> > At times, new code that you write will correlate with a statistically > significant change in one of the numbers on that dashboard. You will then > know that you have affected billions of beings.

Correlation == ...causation?

</comment><comment><USER51> So. wait. I can't actually write software for alien beings? Tease.

Anyway, agree with the sentiments personally, but not sure that's true of those who identify strongly with the moniker "programmer".

</comment><comment><USER52> respectfully, i honestly cannot even guess what the point of this post is.

</comment><comment><USER53> Very pain full, but very very valuable. Being a human.

</comment><comment><USER54> Hooray!

</comment><comment><USER55> Good :)

</comment><comment><USER56> :-)

</comment><comment><USER57> The mooninites (<http://aqua-teen-hunger-force.wikia.com/wiki/The_Mooninites>) are the perfect voice for that persuading.</comment>


Facebook f8 Keynote Live Stream - <AUTHOR> http://www.visualwebcaster.com/Facebook/50038/reg.html

<comment><USER2> alternatively: <http://www.ustream.tv/channel/apple-universe>

<comment><AUTHOR> loving the electronic music in the background

<comment><USER3> Ha, can you tell its a web start-up?</comment></comment></comment>


New Picwing widget with summer 2008 photos by Garry Tan - <AUTHOR> http://ycombinator.com/?newwidget

<comment><USER2> I begged, but they didn't include my 3 months of no haircut photo: <http://danhau.posterous.com/no-haircut-for-three-months>

It even pimps the YC logo.

Ah, the joys of not having a real job.

</comment><comment><USER3> Man, I am so pumped for when Picwing gets out of "beta" (if you can call it that) and the price is lowered, more frames are added, etc.

I will be on this so fast because with myself out of the house, and my young brother going in 1-2 years it's the perfect gift for my mom.

Good job you guys, I hope everything works out for you!

<comment><USER4> Agreed - my parents and grandparents would love it. In fact once they get the shipping time down I think price isn't even that big of a deal to a lot of consumers. If my dad could put it in my grandma's living room next week he'd definitely pay $250.

<comment><USER5> If money isn't the problem, just get a regular wifi frame now and get a Picwing later.

<http://bountii.com/search.php?item=SPF-83V>

<comment><USER4> The simplicity of my brother, sister, and me all being able to email our photos to one address and have them show up for our grandmother is what is really awesome about the Picwing.

AFAIK the samsung doesn't have that feature. I see it accepts RSS feeds so there are ways around that, but that's already getting too complicated.

<comment><USER5> Use it in conjunction with ourdoings and you could email your photos to an address that puts them all on the frame.

Edit: Your grandmother doesn't need to know anything about RSS if you configure the frame for her. She can just turn it on and off. Someday Picwing will give her an easy way to switch between feeds, but for now just set up one feed that you and your siblings send your photos to. (You _can_ switch feeds on the Samsung, but it involves pressing a combination of buttons on the back.)

Your brother and sister don't have to be super technical either. You set up the site within <http://ourdoings.com/> and create one email address. If you don't care about the web site distinguishing whose photos are whose, just give that email address to your brother and sister.

If you want to distinguish whose photos are whose, your brother and sister can go to the site you created, click the Edit tab, and "volunteer." After you approve them, they can go in and create their own email addresses, or upload by other methods, and photos will have your individual names associated with them.

</comment></comment></comment></comment></comment><comment><USER6> Congrats to the picwing team for a great widget. It's really well done! They're a super talented team, and it's rare to get together people that can just really kick ass on both hardware and software.

Also, not all of those photos are mine, so I can't take 100% credit ;-)</comment>


Ask HN: Aggregator intended for a certain market niche? - <AUTHOR>

Reddit, digg, ... all focus on several interests (f.e. technology, fun, news, music, video, ...). Would it be wise to build an aggregator that is solely intended for a certain market niche (f.e. technology)? <comment><USER2> Sure. Ray Camden wrote an aggregator called ColdFusionBloggers.org as an exercise and it's been the go to site for ColdFusion programmers for years. He created jquerybloggers.com recently using the same code base, but it's not nearly as popular (yet?).

Of course, you have to let people know the site exists, you can't rely on SEO alone. But they can also be a good way to pick up some ad revenue.

</comment><comment><USER3> Of course. That's kind of what HN is, right? Same with Techmeme and their associated properties.

I am a huge fan of niche focused aggregators. Reddit is cool, but there are so many subs and it's easy to get distracted by jumping around. Any specific niche you are thinking about?

<comment><AUTHOR> I'm actually thinking about a celebrity/gossip niche. It would be fun to just read articles and watch pictures/videos of a certain celebrity, without visiting multiple websites. I just don't have a clue how an aggregator is build. Do I have to build a crawler or can I just use the RSS feeds of certain websites?

<comment><USER2> The sites I mentioned just aggregate the RSS feeds from other sites.</comment></comment></comment>


Ask HN: Which Chromebook to buy for parents? - <AUTHOR> I am trying to buy a Chromebook for my parents.  Usage mostly consists of search, GMail, Docs, printing documents, etc.  Screen size should be at least 14".  Thanks. <comment><USER2> Originally my mom had the 11" but it was way too small for her eyes and has since upgraded to the HP 14" which is far better. While I encouraged her to get it to reduce her risk of spam and viruses.. she still manages to get a "toolbar virus" or "extension virus" every once in a while.

I believe she had her Chromebook for 4 or 5 years before it just died... and she ended up buying another one. Can't really complain.. 4-5 years for a laptop that is used everyday is pretty good. I tend tog o through 1 every 2-3 years. But love it for its speed.

</comment><comment><USER3> I always truest The Wirecutter for these kinds of things. They recommend [0] the ASUS Chromebook Flip C302CA: [https://www.amazon.com/dp/B01N5G5PG2](https://www.amazon.com/dp/B01N5G5PG2)

[0] [http://thewirecutter.com/reviews/best- chromebook/](http://thewirecutter.com/reviews/best-chromebook/)

</comment><comment><USER4> Acer's chromebooks are excellent. Choose IPS.

[https://www.acer.com/ac/en/US/content/models/laptops/acerchr...](https://www.acer.com/ac/en/US/content/models/laptops/acerchromebook15)

</comment><comment><USER5> Any particular reason you've ruled out an iPad Pro?

<comment><AUTHOR> Yes, they cannot hold a tablet for more than a minute, or so. They also need a normal physical keyboard to be able to type without too many mistakes.

Moreover, my father did not like the iPad because it was difficult for him to navigate between multiple browser tabs, particularly with one or more of them having Docs sessions!</comment></comment>


Ask HN: Review my startup - elephrame.com - <AUTHOR>

Hi guys,
I created Elephrame to help people exchange ideas as thoroughly and effectively as possible. The concept is that while you would go to a place like Wikipedia to get information about a topic like Mitt Romney, you would come to Elephrame to find out what people think and believe about Mitt Romney.
With that in mind, I'd like to know what you think about the concept and the site itself. I'm interested specifically in three questions:
1. Does the landing page compel you to look around, sign up and/or contribute? 2. Is it easy to understand what Elephrame can help you do? 3. It is easy to understand how to actually use the site (i.e. make a claim, etc.)?
Beyond that, any other feedback - positive, negative, in-between - would be very helpful and appreciated. Elephrame's hit a difficult barrier when it comes to user conversion and I'm eager to know how everyone thinks the network can get over it.
URL: www.elephrame.com <comment><USER2> The concept is very good...it's nice to have a one-stop shop - so to speak - for info on a certain topic. My two cents so far:

1\. The neutral colors is a good thing...I think it gives the site a minimalistic as well as non-pro/non-con feel. Great job there :)

2\. The Logbook page (and basically any other page needing to display lots of text-heavy content): perhaps opting for a layout style that enables people to scroll less while viewing more content? Something like jQuery Masonry combined, perhaps, with Twitter-style page scrolling?

Those two points are what I have to share now...if I have anything else I'll mention it

<comment><AUTHOR> Thanks a lot for the response.

1\. I'm glad that you get the minimalist/non-pro feel from the site. That was my aim so that's good news.

2\. I hadn't thought about Masonry-like layout, but I'm thinking that could be a good idea so that people can see the diversity of content.

However, the reason I avoided Twitter-style scrolling was because I often find myself on other sites wishing I could just hop to a page from a long time ago, but instead having to press "More" over and over again. Haha. I always have an open mind though as I get new info/feedback.

Thanks again for your input and definitely come back if you think of anything else.

</comment></comment><comment><USER3> nice concept !

<comment><AUTHOR> Thank you. Do you have any criticisms, by chance?</comment></comment>