I'm creating a website to promote early stage sites and ideas - <AUTHOR> http://www.kickoffboost.com/

<comment><USER2> Cool idea. I might suggest creating a static version of your site and hosting it on s3. This will make it much more stable if you have a high read rate. Then you can point the new submissions to a app server or something. You don't have to get fancy with this or anything, a simple 'wget -r [http://www.kickoffboost.com/'](http://www.kickoffboost.com/') and upload that to a s3 bucket, etc.

<comment><USER3> Even easier would be to setup cloudflare in front of the site.

All you have to do is set the cache control headers for your landing page to something like "max-age=300, public". That way cloudflare's servers will eat the vast majority of your requests, but no one will see content older than a few minutes.

We got HN'd the other day and this kept our median response time around 25ms, even for our slow rails app.

Of course you have to make sure your landing page is publicly cacheable for this to work (i.e. no user specific data), but that's a small price to pay for a drastic reduction in the amount of traffic you need to serve.

<comment><USER4> +1 for Cloudflare. I use them for my site and responsiveness has never been better. Their service is truly excellent.

<comment><USER5> I second that, Cloudflare is the way to go - extremely reliable.

</comment></comment></comment></comment><comment><USER6> How do you pick what goes on the front page and how long it stays there? Or is it just FIFO queue with most recent on top? If so, how do you throttle it and what's the backlog?

One thing that I don't like about BetaList (as a submitter) - there's no insight into whether your submission is going to be accepted and if it is, then when it's going to be featured. If you can make your site better _for submitters_ , you will have an upper hand over BL, which is _the_ competitor to measure up to at the moment.

<comment><USER7> As a co-founder of Bitcast ([http://www.bitcast.io](http://www.bitcast.io) \- the current top listed "Kickoff"), I can say the traffic from Kickoffboost has been great!

For some rough data: We actually launched on HN a week ago and had about 120 concurrent visitors for a span of ~6 hours. I assume this link, at it's #1 ranking since ~10pm PST, is getting somewhere around 100-150 concurrents as well (because of the off timing). As a result, it seems that around 10% of Kickoffboost's traffic (10-20 concurrents) has been consistently directed to Bitcast which isn't too shabby. I'll be interested to see what the numbers look like when traffic isn't being directed from HN.

<comment><USER6> How is this even remotely relevant to what I asked?

And haven't you (or someone else from your company) had posted the exact same comment earlier under a different parent, a comment that is now gone? So presumably you just "moved" it here to get it higher up on the page. That's tacky. Don't do that.

<comment><USER7> Sorry, that was a reply to a different comment! I was going to speculate on the selection process, but the OP has done a good job of answering that above.

</comment></comment></comment></comment><comment><AUTHOR> Hi Everyone,

The response to kickoff boost has been overwhelming and I'm in a bit of a struggle to keep up, but it's a great thing :)

I'm focusing the showcase algo right now so I can't comment or reply to everyone individually until later tonight, but I'll post some updates here.

I launched kickoffboost.com rather prematurely not having any idea that I would get this much traffic. I started coding for kickoff boost the day I read Paul Graham's post "Do things that do not scale" and basically just built a front page with DB hook to showcase products.

Right now, I am manually approving submissions. I'm working to implement a process where after approval, each product will have a "life" (say 300) and "age/clicks" (starting at 0).

When links are clicked, that product's age will be incremented, and the product will get front page space as long as age doesn't exceed life. The life/age bar will be publicly shown for each product. Once age exceeds life limit, the goes to "archived / older posts" and new products get front page view ( thinking about limiting front page to show 20 products at a time ). What do you guys think of this idea? I just want to optimize great new product's chance of discovery and I thought this would be a fair way to distribute the traffic love.

Like I said, I took Paul Graham's advice to heart and created something that really doesn't scale as of this moment. This has been extremely validating however, and now I am in overdrive to get things done. Please feel free to help me out by giving me ideas about how I can improve this.

I am really hopeful that I can turn this into something very helpful people like me who build things and often don't get the recognition they hope or deserve.

Thank's to everyone who pointed out bugs and optimization tips. I am getting to them one at a time. Thanks to everyone who submitted their products. Because of the premature launch, I cannot guarantee that I'll approve and showcase all the products just yet, but I feature all the submissions (as long as they are not troll submissions) in a just and fair way. Thank's to everyone who took the time to write to me and say that they see this as something useful. Thanks to everyone for checking it out. And thanks to PG for that essay "Do things that do not scale". I don;t know how, but the idea came to me within an hour of reading that essay.

Cheers! easymode

</comment><comment><USER8> For anyone who likes this sort of thing, you should also check out [http://betali.st/](http://betali.st/)

I'm not involved in either btw.

<comment><USER9> The Museum of Modern Betas (MoMB) has been around for many years now. [http://momb.socio-kybernetics.net/](http://momb.socio-kybernetics.net/) It's worth a visit too if you're into this sort of stuff.

</comment></comment><comment><USER10> Even though I'm already subscribed to betali.st and erlibird, I just can't seem to get enough of sites like this. Bookmarked.

<comment><USER11> Are there other similar sites that you could name (either for closed or open betas)?

<comment><USER12> [http://www.reddit.com/r/sideproject](http://www.reddit.com/r/sideproject)

Note: I moderate r/SideProject. This subreddit has similar content to "Show HN," but each link spends more time on the front page. It is also a good place to test submission titles before posting to HN.

<comment><USER4> I've already posted my side project in another subreddit, is it bad form to post it in r/SideProject as well?

<comment><USER12> Submit the link to your project in r/SideProject. It is definitely not bad form, since it is a subreddit for sharing side projects.

</comment></comment></comment></comment></comment><comment><USER13> Interesting - bookmarked. Will probably try it out next time I launch a product.

Stuff like this is why I prefer /newest to the front page. =)

(Edit: Okay, it's on the front page now. Still, /newest is always worth checking out.)

<comment><AUTHOR> Thanks so much :D I'm trying to gather how many eyeballs each listing can gather, and I'm trying to optimize getting the traffic to the listings. I'll post the updates in this thread.

Thanks again :)

<comment> grey-area Really nice site. To maximise traffic, consider starting a mailing list as well which mails out new sites once a week.

</comment></comment></comment><comment><USER14> Twitter auth is not functional

[http://imgur.com/70sPKpM](http://imgur.com/70sPKpM)

<comment><USER15> Same for me. The author should set up some kind of exception notification, so as to catch exceptions he or she doesn't see. Easiest to set up is [https://github.com/smartinez87/exception_notification](https://github.com/smartinez87/exception_notification)

I'm sure it's all very test-driven though :)

Also, a nicer error page would be ... nicer. The default Rails error page oozes professionalism (I'm guilty of delaying error pages styling for way to long too - who's ever going to see them, right?)

<comment><USER14> I've been guilty of not setting up notifications and pretty error pages too. Thanks for the link. There are some free Saas tools as well: New Relic, Logentries, Honeybadger that can make it easier.

</comment></comment></comment><comment><USER16> How many eyeballs do you think will come across your site?

I've recently been featured on beta list and thinking about applying on erlibird although erlibird requires payment.

<comment><AUTHOR> Hi. Thanks for checking it out :) In short, I have no idea how many eyeballs it's gonna get, but I have google analytics open and I've gotten 300+ visit since I linked it here already :D

I would love to feature your product though. I'm really glad you took the time to check it out. It'd be extra helpful to know back from you about how many eyeballs you got from kickoffboost.

You can submit your product on the site, or I can even put a posting up for you if you just give me your link :)

Cheers!

<comment><USER16> Cool. Just signed up.

My signups from betalist have dropped off, so I'll let you know how we go with you guys if we get approved.

</comment></comment></comment><comment><USER17> Submitted my latest project, [https://sparklr.me/](https://sparklr.me/) Out of curiosity, is there a criteria for what gets showcased, and if so, what is it?

Also, noticed that all the new things are appended to the bottom of the page. Makes it look like the site hasn't changed, imo, but maybe that's intentional

</comment><comment><USER18> It's like Freshmeat, for web apps!

(Edit: apparently Freshmeat is now called Freecode? I guess it's been a while since I visited...)

</comment><comment><USER19> I'd add authorization. Right now you can access all the edit and show pages as long as you're signed in

<comment><USER20> Yep, direct object vulnerable. [https://www.owasp.org/index.php/Top_10_2013-A4-Insecure_Dire...](https://www.owasp.org/index.php/Top_10_2013-A4-Insecure_Direct_Object_References)

</comment></comment><comment><USER21> Is there an RSS/Atom feed of newly released apps?

<comment><USER22> Please! A RSS/Adom feed would be great, it will save time visiting the site everyday to check for new and cool stuff :)

</comment></comment><comment><USER23> Yay! Another resource for early traffic.

StartupLi.st, which I created from my tent while on deployment in Afghanistan (crazy!), was an early mover in this space, and has some new features in the pipeline.

Kickoffboost looks pretty cool, and is in the same category as Erlibird, BetaList, KillerStartups, Wikindu, MoMB, StartupLift, etc. It's great to see so many sites looking to help boost the early traffic of very early startups.

Also, Mevvy and Ocitrus are newer resources to showcase your early startup.

All of these resources are recommended to use when looking for exposure and feedback on your early product/ prototype.

Eventually... TechCrunch will be an afterthought when looking for early traffic/ users. Cheers!:)

</comment><comment><USER24> Here's an even cooler idea: instead of listing emerging ideas, ,and beta projects, what about creating a website service for finishing almost done apps (alpha projects if you like). That would be a more interesting list. People could upload their started, but not finished projects and outline what's left. There must be millions of good ideas that has been started, but never finished due to the fact that the developer didn't find the problem interesting anymore. Specialize in one thing, like iphone-apps.

<comment><USER25> Why would developers who aren't interested in a problem any more be interested in documenting the code enough for someone else to take over? Color me skeptical :-)

</comment></comment><comment><USER26> Okay, I'll go for it. I'm very curious to see how the traffic will compare to Hacker News. Yesterday I put a link to my company ([http://algorithmic.ly](http://algorithmic.ly)) in a comment and the response was overwhelming. I've heard that traffic from different sources can behave drastically differently in terms of conversions, and HN is notoriously bad with conversions, so I wonder how it will compare.

<comment><USER27> Going to hijack and tell you that you've got all the right buzzwords to get me interested but I still have no idea what you're offering from the landing page.

So much so as to dissuade me from signing up (to what?)

<comment><USER26> Thank you! I'm glad someone finally agrees with me. I keep getting overruled on this point, but I wanted to put an interactive product demo on the landing page.

Algorithmic.ly is a simple service for certain kinds of algorithms without needing to manage the infrastructure. So if you're building, say, an e-commerce site, and you want to add a feature that adds a "people who bought this item also bought these" presentation box onto each page, you can use Algorithmic.ly to build a data model, choose the "item similarity" algorithm to continuously run on your model, and then use Algorithmic.ly's REST API to push data into the model and query results from the algorithm.

I hope that help explain it, and I hope someday I'll get to build a cool interactive demo into the landing page :). For now, the conversion statistics are not helping my case for putting more on the landing page.

<comment><USER27> Guess I'm in the minority that likes to know what they sign up for.

Thanks for a solid explanation.

</comment></comment></comment></comment><comment><USER28> FYI, I submitted an app ([http://memn.io/](http://memn.io/)) to this an hour or so ago and while I don't see it in any publicly available section, I am getting more than a few hits with kickoffboost.com as the referral. Playing around with your URLs showed that you can just increment the number to view any submitted product. You might want to switch to UUIDs or at least add more security.

</comment><comment><USER29> I'm surprized there are very few apps presented from a user centric point of view. "This app is a ..." bad, "Make better ..." good.

This makes it clear and easy to grab how the app will contribute to make my life better, anf why using and buying it might be worth for me.

Hey Kalzumeus, your marketing lessons are starting to work on me! I was just a dumb programmer before.

<comment><USER30> How did we do? "We help people quickly make decisions between competing options."

<comment><USER31> Stock options? Or just options in general? So is it like a friend giving you advice?

<comment><USER30> We're trying to build a site that gives people the information they need to decide between different products/services/options. For example: [http://www.slant.co/topics/697/~what-is-the-best-cross- platf...](http://www.slant.co/topics/697/~what-is-the-best-cross-platform- note-taking-tool)

<comment><USER31> So you are writing new reviews for each product in a "viewpoint" kind of way?

I am thinking about Metacritic and how they evaluate someone else's review but still link to it.

<comment><USER30> It's actually all crowdsourced. Anyone can add new Viewpoints, improve existing ones etc. Reviews typically go out of date very rapidly so we're building something that can be constantly updated/improved. I guess the UI has a long way to go before it's obvious how it all works.

For example here is a pretty great rundown of CSS pre-processors ([http://www.slant.co/topics/217/viewpoints/1/~best-css- prepro...](http://www.slant.co/topics/217/viewpoints/1/~best-css- preprocessor~stylus)). You can click through to see discussions, previous edits etc. (please ignore the lack of data in the bar charts on the "summary page", it's a brand new feature)

(also, I did a little stalking, you will like our stack: node, backbone, coffeescript, stylus. All single-page as well :)

<comment><USER31> OK thank you. Actually, the Suggested Edits interface is quite good. Maybe one could also comment on the edit they have just made ala git.

A good stack to have :). What are you using for server routing and the `package.js` compilation?

</comment></comment></comment></comment></comment></comment></comment><comment><USER29> I would love to be able to receive the new one by mail with some presentation text.

<comment><USER32> I would love to receive an email every week with new startups.

And this would be a terrific way for small startups to get the word out. There would be a moderator who would decide which startups are good enough. I would rather have the moderator decide if something's interesting enough than HN crowd.

<comment><USER33> Thats a great Idea. At the moment I trawl angel list but it's not really built for that type of interaction

</comment></comment></comment><comment><USER34> This is really awesome! :) I submitted our iPhone App 7-Minutes Workout ([http://www.tapelicious.com](http://www.tapelicious.com)) I'm looking forward to see it on your site!

</comment><comment><USER35> Great idea! I love this and give you props for putting together a site that showcases new ideas. There's so much noise out there that it's nice to have a site that weeds through that noise. Awesome.

</comment><comment><USER36> Your links are broken; middle-clicking on a link does nothing. Also, please let me decide, if I want to open a link in the same tab (left-click) or in a new tab (middle-click). (Linux/Firefox)

</comment><comment><USER37> There was another site posted a month or two ago that was similar. Post an idea and get feedback. I even registered for a credit but now I can't remember the site, anyone remember?

</comment><comment><USER38> Reminds me of [http://www.killerstartups.com](http://www.killerstartups.com) back in the days (not sure if they are still doing that though).

<comment><USER39> Yeah! It's similar to killerstartups which is actually nice, isn't it?

<comment><USER38> Yes. It got me pretty nice traffic back then and it was much easier then getting featured on TechCrunch. I will submit on Kickoffboost for my next project!

</comment></comment></comment><comment><USER40> Suggestion: Maybe make the thumbnails link to their site as well.

</comment><comment><USER41> Would be useful if you have newsletter for recently added/updates of the day. Consider feedpress.it to read your RSS, it already has the newsletter feature.

<comment><USER41> Or better, make it push to a Facebook Fanpage daily.

</comment></comment><comment><USER42> This awesome man. How muuch traffic are you getting to the site. Pre-HN post?

And are people paying you to feature them? Or just companies you like

Great job again man. i love it. Def bookmarked

</comment><comment><USER43> Looks cool. Just submitted our litte side project phdtree: [http://phdtree.org/](http://phdtree.org/)

</comment><comment><USER44> Great website. Just Signed up and Submitted our new online event ticketing system Yapsody.com on your website. Hope you approve it. :)

</comment><comment><USER45> This is awesome! I just submitted Coindega ([https://www.coindega.com](https://www.coindega.com))

</comment><comment><USER46> I've got "We're sorry, but something went wrong." trying to sign in with Twitter. Please check

</comment><comment><USER47> Looks nice! Maybe site screenshots should be clickable to make it more likely people will open each submission?

</comment><comment><USER48> Submitted: [http://www.placeunit.com](http://www.placeunit.com) Kick me :)

</comment><comment><USER49> Maybe it could be an idea to be able to comment the sites. Thereby you would get some retention of the users.

<comment><AUTHOR> Definitely. Getting feedback on ideas is one of my aim. Kickoffboost will feel much more complete within weeks. This launch was to validate that there is a need for this kind of product, and I think I have the green signal to now make it awesome :)

</comment></comment><comment><USER50> Much needed! just submitted [http://pepnest.com](http://pepnest.com) :-)

</comment><comment><USER51> Submitted - [http://sideprojectors.com](http://sideprojectors.com) :)

</comment><comment><USER52> Really good idea, but needs more consumer & business ideas on. Too many geek tools at the moment.

</comment><comment><USER53> An RSS feed would be fantastic, I think. Otherwise the site seems to do its job nicely.

</comment><comment><USER54> Bookmarked! We may submit our product on here once I consult with the rest of my team.

<comment><USER55> May I ask why you wouldn't submit a product here? I'm just curious.

<comment><USER54> Our product is transitioning from closed to open beta. Among other reasons, a) We would want to set up tracking for referrals and to better gauge the effects of different distribution channels, among other things. b) we will have an explicit need for a traffic bump in a small window in the near future, so I would rather save an avenue like this to coincide with our other efforts. This scenario could exist for others too in situations such as looking to ride off a press story, and wanting to utilize the traffic to boost a crowdfunding campaign, etc.

Also, unsure if this is actually a meaningful place for our product, as it's a mobile app and so not as direct, but that shouldn't really hurt I don't think

<comment><USER55> Thanks for answering keerthiko, that makes sense, I did some snooping and found BitGym, very cool product. Best of luck.

</comment></comment></comment></comment><comment><USER56> I sent you an email to the one via your contact us link. I like the page!

</comment><comment><USER57> Well this is something great. (i just gave you an standing ovation)

</comment><comment><USER58> Nice idea, I am also submitting our new launched app [http://justprecious.net](http://justprecious.net)

Btw found a silly bug. When I signed up by mistake I used firstname.lastname@example.com and now I can't login with email@example.com

</comment><comment><USER59> Could you also add the stats for hits on a particular item...

<comment><AUTHOR> That's exactly what I'm working on :D

I'm planning to work all those stats into an algo that would reward better ideas.

Will keep you posted. Thanks!

</comment></comment><comment><USER60> Cool, just signed up and submitted Soulmix ([http://www.soulmix.com](http://www.soulmix.com)). Would love to see how a listing on KickoffBoost turns out :)

</comment><comment><USER61> How do you plan on getting traffic to your site?

</comment><comment><USER62> is there something wrong? I´m getting a "This site doesnt exist" error.

</comment><comment><USER63> Could you add SSL support?

</comment><comment><USER64> i listened to all the tracks on looti tooti.

how do i give this guy my money.

</comment><comment><USER65> Is there a RSS feed?

</comment><comment><USER66> isn't that what hacker news is for?

</comment><comment><USER67> Cool project!

</comment><comment><USER68> step 1: get traffic for your site (kickoffboost.com) first.

step 2: nah do step 1 first.

<comment><USER69> step 2: plant links in echo chamber step 3: nah, nothing happens, but everyone feels really good about themselves</comment></comment>


Goals Gone Wild: Systematic Side Effects of Over-Prescribing Goal Setting (2009) - <AUTHOR> http://www.hbs.edu/faculty/Publication%20Files/09-083.pdf <comment><USER2> The best lesson I ever got about goals I got from learning to play (6-max, limit, texas hold'em) poker. Poker has stupidly high variance to profit ratio, and an endless amount of metrics you could measure to track progress.

Obviously, the goal of playing is to make money, and almost equally obviously, focusing on how much money you made is actively harmful if done for sample sizes lower than 100k hands or so.

The solution to improvement through quantitative analysis in that environment is to find key drivers that you believe impact your overall goal, analyse trends you see in those drivers, and based on those find a few areas that you want to qualitatively drill into to figure out changes you can make. I.e. - "I open 20% of the time from early position and 25% from late position - if I compare to other successful players that is too low a difference, so lets see if I can find some situations where I may be making bad decisions and plug those holes".

That is what we want to do with goal setting in business as well. Yes we have some high level KPIs that we want to improve, but actively working "to improve your revenue" is harmful and will no doubt lead to selling cars that explode etc. To be successful you set your overall KPI(s), then you forget about it and focus on smaller things that will over time incrementally add to your overall goal.

If you have managers and employees who cant make that separation or want to take short cuts to directly affect the overall goal without focusing on the smaller bits, or comparing to some kind of "best known" practise, then you end up with exploding cars, tools that has all features and no usability etc.

<comment><USER3> > _" To be successful you set your overall KPI(s), then you forget about it > and focus on smaller things that will over time incrementally add to your > overall goal."_

I don't see how this works in practice. Once you expose KPIs like this, then everything in your org works to increase them. Promotions probably get handed out on this basis. As you say, this leads to exploding cars and bad tools. The challenge (which you don't mention) is _how_ you create an environment that doesn't hold the metrics higher than other things. I'd argue that values- driven orgs probably do this better but I'm not sure.

<comment><USER2> Yeah that is the challenge. If I knew the right answer that solves it I would certainly share, but I dont.

What I try to do is talk about it over and over, and emphasize for each new initiative we roll out how we dont care about how it will impact the KPIs, we care about how it will impact our overall goals that the KPIs are trying to measure.

That said, #1 resistance point for most initiatives is still "how will affect the KPIs", so we are certainly far away from solving that problem.

Things we've tried to de-emphasize the KPI importance is going away from having an "exceeds" measure, now we are just "meets objective" or "doesnt meet objective", with "doesnt meet" set fairly low so that the people who like to min-max things dont have another clear target to min-max towards, and doing things like moving the focus to team oriented goals rather than individual goals to lower the link between KPIs and rewards, and instead linking individual rewards to general appraisals.

</comment></comment></comment><comment><USER3> Abstract from the paper:

"Goal setting is one of the most replicated and influential paradigms in the management literature. Hundreds of studies conducted in numerous countries and contexts have consistently demonstrated that setting specific, challenging goals can powerfully drive behavior and boost performance. Advocates of goal setting have had a substantial impact on research, management education, and management practice. In this article, we argue that the beneficial effects of goal setting have been overstated and that systematic harm caused by goal setting has been largely ignored. We identify specific side effects associated with goal setting, including a narrow focus that neglects non-goal areas, a rise in unethical behavior, distorted risk preferences, corrosion of organizational culture, and reduced intrinsic motivation. Rather than dispensing goal setting as a benign, over-the-counter treatment for motivation, managers and scholars need to conceptualize goal setting as a prescription-strength medication that requires careful dosing, consideration of harmful side effects, and close supervision. We offer a warning label to accompany the practice of setting goals."

</comment><comment><USER4> I've witnessed this first hand - we recently started rolling out measured goals in our warehouses. This involved staff getting set daily goal counts for certain tasks (products shipped, products put on shelves etc.). As soon as we rolled out metrics everything that wasn't measured became a low priority. For example, we were not measuring cycle counts (stock take) so immediately the number of cycle counts plummeted, which increased our out-of-stock errors. We had instances of staff hoarding incoming shipments from suppliers at their workstations in order to get higher rankings.

Overall the warehouses went from being generally efficient to extreme performers on measured metrics. I think metrics can be clearly powerful, but you have to be very careful about what metrics you choose to implement.

<comment><USER5> A long time ago, in western Europe, kids wouldn't go to school if they were sick. To check if they were sick the mother would check their temperature with an alcohol thermometer. Of course the kids understood the goal and used the night lamp to get the appropriate temperature displayed to skip school.

When talking about metric in corporate setting I like to remind everybody that I have a strong suspicion that the guy who invented the thermometer also discreetly invented the night lamp.

(most of the context is disappearing: blinds that force you to use the night lamp in the morning, alcohol thermometers and incandescent light bulbs)

<comment><USER6> Any source of heat, such as radiator, would do the same job.

<comment><USER7> And any thermometer. I've used friction on those goofy liquid crystal, flat plastic thermometers.

</comment></comment></comment></comment><comment><USER8> I work as a contractor for a company where employees must set a couple of goals yearly and meet them. Set them too low, you're considered lazy, fail to meet one and you're considered unreliable.

There's also a mandatory quota of trainings, which employees must elaborate and then train their colleagues, and "charitable work" they must participate.

I don't want to be hired.

<comment><USER9> "Set them too low, you're considered lazy, fail to meet one and you're considered unreliable."

Ah, yes. "You must be able to handle ambiguity, because we can't."

</comment></comment><comment><USER10> A glass of wine per day is ok. Maybe even good. Two six-packs a day isn't. Anything is ok _in moderation_ , and with full knowledge of both positive and negative effects. I have long-term objectives for sure, but avoid setting long-term SMART objectives for myself, because life happens. At work during the annual review I set SMART objectives as required, but completely ignore if not forget them during the rest of the year.

Short term is another story. Every evening I decide exactly what I want to accomplish during the next 24 hours, always looking at how what I'm planning for the day aligns with my longer term objectives. That's been crazy useful to me.

Amusingly, that sentiment has a middle ground which I apply to software development projects - I live and die by a project's vision/scope, which is really an objective for a project.

<comment><USER11> Agreed on all points, and I'd like to add some numbers that worked for me - keep about 5-10 long-term objectives. Make one of them taking care of your health (exercise, nutrition), one taking care of your mental health (mostly work/rest/socialize balance), and invest in your knowledge/skills. Currently, I have 5 more (finish project #1, #2, #3, make company profitable, move out of country).

Additional point I'd like to make is - know thyself. You simply cannot set goals on some wishful thinking and other randomnesses. While glass of wine per day is ok, you might better be off without any, or you might need a bottle of wine a day to manage your cholesterol level (stretching the metaphore).

Also, props for planning out the next day in evening - makes sleep and the start of next day so much more pleasurable experience.

</comment></comment><comment><USER12> Part of the problem here is the problem of aggregation.

We measure things in the aggregate, but we influence them in the minuscule.

So I might measure the fact that a certain fast food restaurant makes french fries slower than another one, but there could be a thousand reasons why this is so. Simply setting a goal of increasing the number of french fries delivered doesn't actually make it happen. Instead, it ends up perversely impacting all the other areas of the restaurant.

We look at things in big, fuzzy ways, so we naturally think we can influence them in the same way. We measure in the aggregate, then find some correlations in the aggregate, declare causality, then set goals. Doesn't work like that. This is the way things are commonly done, and there are multiple logical errors here. [Add in long discussion about the implications of this on public policy-making]

</comment><comment><USER13> There are many types of ambition.

Goal-focused ambition is only one type, it may be the most recognizable, maybe due to the influence of goal-seeking sports competitions.

Goals are great for some games, some of which are competitive. Not everything is a game.

Sometimes a team benefits from a goal more than an individual.

What if you have a goal that is not recognized or appreciated?

What if you've already reached your goals?

What if you have stronger ambition by nature than the goal-seeking type?

What if your goal was to perform without a specific goal while still outperforming those who focused on it?

What if you recognized the factors identified in the original PDF decades ago and groomed yourself to be able to sometimes engage in more effective goal- seeking than the pure devotees, while also outperforming them toward their own goals while yourself being unfocused, whenever you wanted to according to the situation?

</comment><comment><USER14> "Given that small actions within an organization can have broad implications for organizational culture (Fleming & Zyglidopoulos, 2008), we postulate that aggressive goal setting within an organization will foster an organizational climate ripe for unethical behavior. That is, not only does goal setting directly motivate unethical behavior, but its introduction may also motivate unethical behavior indirectly by subtly altering an organization's culture. In sum, although many factors contribute to unethical behavior, the point cannot be overstated: _goal setting motivates unethical behavior_."

</comment><comment><USER15> What a rubbish article. Without goals, how would anyone know what needs to be done? How would you know what is expected of you? If it is a generic company, the main goals are to make sure the company stays around and to make a profit. You then create sub-goals to achieve the main goals and repeat this until everyone knows what needs to be done. If the sub-goals do not agree with the main goals you get the mess which the article describes. This is caused by WRONG goals.

<comment><USER16> While my initial reaction is similar to yours, keep in mind that what's being proposed by the article is the concept that no one sets goals well enough that they should be used the way they are right now. This is a premise I don't agree with, mostly because I think their data is really shallow, but the point is that they are proposing a reality in which you cannot find a decent dataset of people setting goals well within their company.</comment></comment>


1st Smart Cloud Data Warehouse: Self-Driving and Autonomous. Numbers Check Out? - <AUTHOR> http://blog.panoply.io/panoply-moves-to-general-availability-on-the-worlds-first-smart-cloud-data-warehouse?utm_source=social&utm_medium=hn&utm_campaign=ga_announcement <comment><USER2> Whenever I see something like this that is "autonomous" I always wonder how far that really is from what they promise.

<comment><AUTHOR> We'd love for you to sign up for our free trial and let us know your feedback - the good, bad and ugly.

<comment><USER3> Will do! It's just that I've heard this before. Redshift is supposedly fully managed only that in reality it takes like a team.of engineers to get it moving and Bigquery is supposedly serverless only that of you also want your queries to run then you need constant tuning so excuse me for being extremely sceptic.

<comment><USER4> Agree. That's why it's worth it

</comment></comment></comment></comment><comment><USER5> Wow - Interesting news! I've passed this on to my team as they can use this.

</comment><comment><USER6> Exactly the solution we were looking for!

</comment><comment><USER7> Will check it out and its viability

</comment><comment><USER8> Looks great! very interesting.

</comment><comment><USER9> The evolution continues...

</comment><comment><USER10> sharing this with the team. looks like something our team could use.

</comment><comment><USER11> This looks amazing!

</comment><comment><USER12> looks pretty cool - will definitely check it out

</comment><comment><USER13> Looks great!

</comment><comment><USER14> great!</comment>


1125899906842624 - <AUTHOR> http://www.rileyjshaw.com/2048/ why stop at 2048? <comment><USER2> The saga continues.</comment>


Ask HN: Should I consider what technology a startup is using when joining them? - <AUTHOR>

Hi guys, I'm going to be a fresh grad next year and looking for a job. I've already decided to join a startup and looking opportunities. A Java-based startup is offering me a position and they are exploring the use of Python in their work. I LOVE Python for its elegance, gracefulness and efficiency, I eat-practice-work with Python for quite some time and I think I'm pretty good at it. Sure enough, I want to become a Python expert in the future.
As everybody might agree with me, job demand for Python is not as great as for Java (at the moment) so frankly, this offering could be quite rare. Java is fine with me as it is used in my university but since this is about work, I really want to do what I love every day. At the same time by joining a startup, I hope to improve my technical & business capability to prepare myself for future ventures. There are several things I wish to learn such as real world app deployment, scalability, cloud computing and stuffs about running a startup.
Should I accept this job offer, given my preference about Python/Java? <comment><USER2> Where are you looking for work? I haven't come across a single startup using Java here, and I know many using Ruby or Python. In my experience, technology choice is never just that- it says a lot about the culture and internal practices of a company. (We're hiring Python hackers).

<comment><AUTHOR> Hey thank you for your reply.

We're here in Singapore. Here it's unlike in the US I guess. And I think my skill would require some more time to be any where near "hacker" as one might refer to. But I love to learn & practice, so I'm confident on getting better.

I'm curious about the part of "technology choice is never just that- it says a lot about the culture and internal practices of a company". Hope you could tell more about this.</comment></comment>


Node.js is not suitable for generic web projects - <AUTHOR> https://coderwall.com/p/diokxg

<comment><USER2> total link bait title. At least put it in quotes.</comment>


Companies Replacing Gut Feelings With Big Data - <AUTHOR> http://betakit.com/2012/02/20/startups-leveraging-big-data

<comment><USER2> Anything is better than not present gut feeling!</comment>


Report: Russians Hacked White House - <AUTHOR> http://www.newsweek.com/report-russians-hacked-white-house-320522

<comment><USER2> Interesting. How interesting that this happens right after Obama signs a couple of controversial cyber-crime/hacking executive orders, Russia apparently hacks the White House (if you can even call exploiting stupidity a hack).

The biggest joke of the story is this part:

"Experts told CNN the hack spread from the State Department to the White House through a phishing email sent from a State Department email address."

Seriously? You hire people, give them security clearance and yet they're opening up emails with suspicious attachments? What's next, we are going to hear of White House staff being scammed by Nigerian 419 scams? How does this even happen? If you're going to hire people (at the White House of all places), make sure they have an above beginner level of using a computer. This is the kind of thing I'd expect my dad or grandmother to fall for because they're not tech savvy, not someone in the White House.

As usual, you can spend millions on security programs, scrape and retain metadata, you can even read emails of other people but the weakest link no matter what level of security or care you have taken is and always will be people.

If the White House can't even protect themselves, how can we trust the NSA and whatever other government departments are trawling our data and storing it won't fall prey to the same attacks? Seems a lot of people that work in the political architecture have been around before computers became mainstream.

I don't want to be a conspiracy theorist nut, but isn't it convenient the Patriot Act is up for renewal on June the 1st? The White House conveniently just gets hacked a few months out? Maybe it is a coincidence, I don't know. I want to see logs, I want to actual proof this was Russia and not the Chinese or whomever can pull off a move of this magnitude.

<comment><USER3> The incident happened last October so those inferences are clearly spurious.

<comment> bob-2 OP could be commenting on the timing of the "White House hacked" headlines being published. Certainly a convenient time for garnering public support of those cybersecurity bills.</comment></comment></comment>


Should Product Managers Know How To Code? Steve Jobs Couldn't... - <AUTHOR> http://bexhuff.com/2010/03/should-product-managers-know-how-to-code-steve-jobs-couldnt

<comment><USER2> (getting a Page Not Found error now... Google Cache: [http://webcache.googleusercontent.com/search?q=cache:qu58iS1...](http://webcache.googleusercontent.com/search?q=cache:qu58iS1Efa4J:bexhuff.com/2010/03/should- product-managers-know-how-to-code-steve-jobs- couldnt&cd=1&hl=en&ct=clnk&gl=us&client=firefox-a))

This is the problem. The problem is you're a developer at your mid-sized company, working directly with sales or analytics or whatever team you support, but you notice your projects aren't coming out quite... right. There's always some important interface feature that is missing, for example. "What if I want to bulk delete the list?" the sales team asks you, and you had no idea they wanted to delete anything from the list, let alone in bulk.

"It would be so nice," everyone starts to think, "if we had a product manager that actually had time to think about this stuff and manage communication, requirements, and expectation."

So you hire one.

He has no prior expertise in your industry vertical and he has no programming background whatsoever.

Things are immediately rocky. Rather than manage expectations, he seems to inflate them. He's constantly trying to cram every new project and feature request down your throat. Any estimate you give him is questioned. While he has no programming background, he knows enough about tech to suggest terrible alternatives that will save a couple days of development time at the cost of huge technical debt. Meanwhile, any suggestions you have fall on deaf ears. You notice areas where the sales team is doing things really manually and suggest enhancements, but he's not being judged on how well he listens to engineers.

Before long you miss interacting with the sales team directly, because even though they asked for completely pointless things that were technically impossible anyway, at least they listened to you when you explained why it was pointless and impossible.

So you grit your teeth and bear it, and wait until the company has a down quarter and needs to let people go, because product managers are almost always on that list.

\---

I've worked with several product managers in my career, and the easiest heuristic for how effective they truly were and how much engineers liked working with them was whether they had a technical background or not. Being a good software product manager is hard. You have to understand the cost of technical debt. You have to understand that engineers have good ideas too. You have to understand the tradeoffs of projects with long-term value. If you're a product manager who used to be a programmer, understanding all of the above is very obvious. If you're a product manager who was never a programmer, maybe you're Steve Jobs.

But you're probably not.

<comment><USER3> Hmm, in the greater world of software project delivery, I actually see this as a problem of misaligned incentives.

People will go ahead and make poor long-term decisions that inflate technical debt and eventually cause product to die largely because they can disassociate themselves from bearing the consequences. You know, like moving on with their lives after the project goes into production and when the problems start emerging.

I've seen this happen with many projects which I was part of. Managers telling me with a straight face that technical debt does not matter. Engineers caving to managerial fiat to ship features which the contract did not hammer down.

All software system failures are human failures. If your company culture, leadership and processes can prevent this, kudos. :)

<comment><USER4> Agreed - see <http://en.wikipedia.org/wiki/Conways_Law> which is exactly the problem you described (but in a more general way)

</comment></comment></comment><comment><USER5> Here is Eric Schmidt on Steve Jobs' technical knowledge, I think the point is pretty clear:

\--

He was exactly the same way he was at Apple: strongly opinionated, knew what he was doing. He was so passionate about object-oriented programming. He had this extraordinary depth. I have a PhD in this area, and he was so charismatic he could convince me of things I didn't actually believe.

I should tell you this story. We're in a meeting at NeXT, before Steve went back to Apple. I've got my chief scientist. After the meeting, we leave and try to unravel the argument to figure out where Steve was wrong—because he was obviously wrong. And we couldn't do it. We're standing in the parking lot. He sees us from his office, and he comes back out to argue with us some more. It was over a technical issue involving Objective C, a computer language. Why he would care about this was beyond me. I've never seen that kind of passion.

\--

[http://www.businessweek.com/magazine/eric-schmidt-on- steve-j...](http://www.businessweek.com/magazine/eric-schmidt-on-steve- jobs-10062011.html)

<comment><USER6> Steve Jobs must have had a understanding about programming, it makes just no sense otherwise.

He was maybe never an active coder, but i can't believe he doesn't understand code itself. It is a skill you can learn in a day and he never was curious about this in 30 years of software industry?

<comment><USER7> he started out doing hardware and software stuff for atari, but it became obvious that he was more of a firebrand and woz was better at the hardware side, so thats how things went.

</comment></comment></comment><comment><USER8> A product manager who doesn't understand implementations will not be able to negotiate when an implementation bears on interface design or scheduling decisions. Conflicts arise all the time between implementation, interface and schedule. To resolve them one has to understand all three.

This doesn't mean the product manager _must_ understand code. It means there's a trade-off. If they don't understand software implementation, they need somebody on the team who does (what the article calls a "Technical Product Manager.") Adding another person is possible, but it hikes up the overhead and communication costs while dragging down the speed of development and decision- making.

The best case is a product manager who can understand a given implementation if and when it bears on decisions about what is possible in the interface or the production schedule. That person can make informed decisions because they understand all the factors.

It's fine that not everybody can do all three, but imo we should stay conscious of the trade-off and keep the bar high.

<comment><AUTHOR> I don't think so, you can have some middle men to be in charge of that and just shout very loudly if the things turn different. Obviously in this case you need a top team that is hard to find and build and was key in the Apple's case.

<comment><USER9> a middle man "shouting very loudly if things turn different" sounds more like a project manager, who gets a specific plan and tries to manage the development process after things have been prioritized and broken down by the PM and a tech stakeholder (usually more efficient).

I've noticed breakdown occurs when a PM is unable to understand and balance the constant push-pull of tech capabilities with desired functionality, or the ability to "satisfice"

</comment></comment></comment><comment><USER10> Steve Jobs dropped out of college, had zilch technical skills but still managed to be employee #40 at Atari.

The best rule in life is "there is only one Steve Jobs".

<comment><USER11> The exception to the rule.

<comment><USER12> I think it really just exemplifies the fact that marketing is king. Finding a job at Atari or amazing the world with the iPhone is the exact same skill. A skill that Jobs was very good at.

</comment></comment></comment><comment><USER13> Jobs had a decent amount of electrical engineering experience before starting Apple; he helped Woz with some of the RAM layouts in the earlier computers they made. The argument is bogus.

<comment><USER14> "Jobs never did a lick of engineering in his life. He had me snowed," Alcorn later recalled. "It took years before I figured out that he was getting Woz to 'come in the back door' and do all the work while he got the credit."

From the article in <http://news.ycombinator.com/item?id=3087492>

You're wrong. Don't worry, he's snowed a lot more knowledgeable people than you. I would call it the key to his success.

<comment><USER15> So, your argument is "Alcorn says so"?

</comment></comment></comment><comment><USER16> "Should Product Mangers wear black? Steve Jobs did..."

Isn't that just a ridiculous argument?

</comment><comment><USER17>
        "a product manager is more or less the CEO of a product line"

I haven't met a _single_ product manager who had the chops to be something grandiose like "CEO of a product".

In my ideal company, the product manager role would rotate among the developers. As many as possible should be _doing_ , not creating powerpoints and writing emails.

The Microsoft "program manager" job description is one I respect.

</comment><comment><USER18> Yes. Most of us are not Steve Jobs.

<comment><USER19> Actually, none of us are. And that's what makes this so hard.

</comment></comment><comment><USER20> "Knowing the code base is a pretty hefty requirement... even seasoned developers don't know everything about their product... so it would be nigh impossible for a Product Manager to do so. It's more important that their minions think they know the whole code base, to try to keep the lazy virtuous developers honest."

I let the "CEO of a product line" slide, but the above comment had me seeing red. A product manager thinking programmers are his minions? I guess it might be true if the programmers are so incompetent that they can't see through a blowhard who pretends he knows the code base.

</comment><comment><USER21> I like to think of the relationship between a developer and the user of their software as being a bit like the relationship between a doctor and their patient. One of them has a problem and the other one has special skills that will enable them to fix it.

Having a person (of whatever job title) between a developer and the user is a bit like having a patient telling the nurse what's wrong with them and the nurse then passing along that description to the doctor so they can write out a prescription.

<comment><USER22> With a single developer, yes. With five or six it's still doable to all meet the customer and talk about your issues directly.

Beyond that you start acting as interfaces already because not enough people can come to the meeting, etc, so you become like mini-PMs anyways. Might as well get someone who can actually manage (track) and do it right...

I think it does help though, for you to know all your doctors/developers, but I don't think you need to manage them day-to-day because a lot of tasks are pretty straight forward and/or can be easily delegated.

</comment></comment><comment><USER23> Here is my perspective, as a product manager at a large (Fortune 500) corporation for the past two years...

I don't know how to code (well, anyway...), but I try to take care of the dirty work so that the development team can focus on doing, you know, _development_. This means figuring out the flow of transactions (we work with web services, and expose our own web services to clients), field level details, managing the intake of feature requests, figuring out why certain things are broken or behaving in unexpected ways...

Basically, I move all around to make sure the developers are able to focus on they are able to do, and protect them from the headaches that upper management and business sponsors produce. I try and manage the goals of business asks and user experience with the abilities of our development team. If there is a major change in design or scope, I make sure to consult with the development lead before I commit to anything.

I don't assume to be more important than any developer, or that I know more than them. I understand what my role in the organization, and my relationship to the development team, and I know who is doing the work that makes us all look good.

I don't know if this satisfies any developers who read this, but this is what I come into work trying to accomplish.

</comment><comment><USER24> _Now... what if you are a Product Manager in charge of lazy, lazy developers?_

Ok, so let's be fair. I'm sure there _are_ totally lazy teams of developers out there. But somehow, I doubt that's the case as often as the author thinks it is.

"I don't need to know how to code. Why aren't you listening to me?! Must be laziness on your part."

</comment><comment><USER25> Steve Jobs wasn't a product manager....

</comment><comment><USER26> I think that perhaps devs saying pms should be able to code is really more like devs want pms to have a deep sense of what can be done with software, what can't, and roughly how difficult things are. You can have that knowledge without being able to code yourself, but I'd bet the fastest way to acquire such knowledge is to learn to write software yourself.

So while Jobs might not have been able to code, he'd done some engineering and I think had a keen sense of where the approachable borders of software lie.

<comment><USER27> That knowledge is pretty hard to come by _even_ if you know how to code, so not having thought computationally .. ever .. makes for a really bad PM.

Computational thinking and prototyping skills are the key, even if you use another human to do the prototyping, knowing what to bother protyping and how to learn from the prototype are all very important for a PM. If you dont have those skills, you don't have the means to discover the limits of what you know about the area your product grapples with, and to grow.

Steve Jobs, I believe, was very good at both.

</comment></comment><comment><USER28> _programming skills are primarily useful to a Product Manager as a communication technique_

Huh? This whole article is a bunch of semi-circular fluff.

Having a PM who can't code is akin to having a college-fresh MBA running a factory. Will it get the job done? Yes. Is it wise for the long-term health of the company, the fluidity of operations, and the happiness of the workers? Probably not.

A PM who can't code is a PM who doesn't understand why feature A takes an hour, while feature B takes three weeks. Do you want your engineers spending stressful hours upon hours explaining how and why things are, or do you want them working?

<comment><USER22> You can have a completely non-technical PM, I've found, as long as they still get to know their teams, the problem domain, etc... The type of person who proudly professes their ignorance of something is not cut out to be a PM. But much of what a PM does is take the bookkeeping off the backs of the developers so they can go to the issue manager and just read what pertains to them.

A good programmer should never need to lie to his PM to push-back. Knowing how to put your foot down is an important part of delivering a working product. And a good PM should never need to browbeat or threaten the team.

If, for instance, they feel a quick release is essential but the developer feels the product isn't stable (race conditions under customer-levels of load) neither is flat-out wrong. Even with the CEO yelling at the PM yelling at the developer they shouldn't bend - if the developer can't deliver what they been asked for they shouldn't pretend they can.

But this tense situation can be solved by working with the developer to clarify requirements. Perhaps a lite-version could be released that was hard- limited below the danger zone, or with a problem feature left out or set to use offline processing to avoid the race conditions.</comment></comment>


The Opium of the Intellectuals - <AUTHOR> https://en.wikipedia.org/wiki/The_Opium_of_the_Intellectuals <comment><USER2> The mentioned "endemic anti-Americanism" of postwar France was very widespread. It was found among the SFIO and diverse left, of course, for evident reasons. But it was also a component of Gaullism, I think as a chafing at having to play on the team of new postwar Anglo-American order, which replaced the Anglo-French upon the latter's defeat in 1940. France had been shuffled down to maybe 4th or 5th place on the world stage, after the Four Policemen (US, UK, USSR, China). In any event that was a contributor to France's withdrawal from NATO's military command, which happened under de Gaulle.

In technological terms they had a fiercely independent attitude, coupled with strong state control (dirigisme), which led to a fascinating sort of parallel path of technological development. Instead of the military (ARPA) or private initiative (Bell), a lot of innovation came directly from conscious French governmental efforts. France had one of the highest rates of industrial espionage against the US during the Cold War - to the benefit of companies like Bull - but it was overlooked so as to keep them "inside the tent". They also invested heavily into domestic initiatives like Sophia Antipole and Minitel, which operated even into the 2010s.

</comment><comment><USER3> Interesting history and background:

[https://en.wikipedia.org/wiki/Raymond_Aron](https://en.wikipedia.org/wiki/Raymond_Aron)

It appears that traditional marxism has been largely coopted by identity politics, as an intentional strategy by the corporate powers that be. This is why you see companies that are absolutely brutal towards labor virtue signal about trendy left-wing social issues.

Despite being deeply conservative, I see a lot of truth in Marx's analysis of the problems with modern financial capitalism. Paraphrasing Chesterton: right about what is wrong, wrong about what is right.

<comment><USER4> You'd be interested to hear, then, that most of Marx's work is about analyzing capitalism and very little of it involves prescriptions for future societies. In fact, Marx wasn't interested in drafting any exact plan for a post- revolutionary society. He was far more concerned with describing the internal contradictions of capitalism that would lead us to such a point.

<comment><USER3> _> Marx wasn't interested in drafting any exact plan for a post-revolutionary society. _

And look what we got. Maybe that was the mistake.

</comment></comment></comment><comment><USER5> If you're interested in a more modern and less French-centric take on this topic, Thomas Sowell's "Intellectuals and Society" is not bad:

[https://www.amazon.com/Intellectuals-Society-Thomas- Sowell/d...](https://www.amazon.com/Intellectuals-Society-Thomas- Sowell/dp/0465025226)

</comment><comment><USER6> "Alexander Dolgun's story: An American in the Gulag" is another great book showing how brutal life can be.

      https://en.wikipedia.org/wiki/Alexander_Dolgun

"The Soviet Story" is a 2008 documentary film about Soviet Communism and Soviet-German collaboration before 1941. It highlights the Great Purge as well as the Great Famine, Molotov–Ribbentrop Pact, Katyn massacre, Gestapo–NKVD collaboration, Soviet mass deportations and medical experiments in the GULAG.

      https://youtu.be/iTJQXKUR6mM
      https://en.wikipedia.org/wiki/The_Soviet_Story

<comment><USER7> I've not read _The Opium of the Intellectuals_ , but was it talking about postwar French Marxism or Soviet Leninism/Stalinism?

<comment><USER6> Aron explodes the three "myths" of radical thought: the Left, the Revolution, and the Proletariat. Each of these ideas, Aron shows, are ideological, mystifying rather than illuminating. He also provides a fascinating sociology of intellectual life and a powerful critique of historical determinism in the classically restrained prose for which he is justly famous.

</comment></comment></comment><comment><USER8> And yet people get so pissed off when I call out french post-modernism and critical theory as being uniquely Marxist. At least some on the right see the connection properly (though it's not like they get it right beyond that in most cases, e.g. Peterson)

But to be fair, it's not like those intellectuals are advocating for the authoritarian parts of Marxism. They're advocating for the egalitarian parts as well as his methodology. Marx _was_ a good philosopher, and is certainly a fascinating thinker. Sartre absolutely believes that Marxism and Existentialism are the same thing (read his work _search for a method_ if you don't believe me).

Maybe academics need to make it very clear that just because they dislike capitalism as its practiced doesn't mean that they should immediately run to what appears to be its opposite uncritically. Most left-wing academics just take dialectical materialism and the primacy of the dialectic method of achieving truth as being a given (though Plato/Socrates is responsible for the latter error not Marx). They don't even see how authoritarian that the dialectical method can be. It's why I realized that Paulo Freire was the opposite of liberatory despite trying to write a book "liberating education" (he reveals himself to be obsessed with Dialectics in _Pedagogy of the Oppressed_ ).

Yet, for all of the criticism I have of the Marxist method and praxis, I think that equating it to a religion is also incorrect. No one peddling critical theory seriously is going to tell you to believe in its dogma religiously. Though, they may give you worse grades on your papers if you do a bad job of calling out its authoritarian tendencies so maybe there is some truth to the analogy...

And since HN is getting on me for posting too fast (it's necessary to combat the rampant Philosophical disinfo going on), I'll respond here to the commentator whose slandering Kant as being some how similar to Marx and Hegel

Kant is the opposite of a Frankfurt school author and you are sorely mistaken for equating him with the likes of Hegel or Marx.

It sickens me to see how poorly Philosophy is understood even by HN readers. You'll find really quickly that Kant is actually one of the most enlightened scholars of all time (and certainly not even close to a Frankfurt school author) if you read even 5 pages of him! My god! Kant would most likely be horrified by any Marxist or Marx-decending authors works.

<comment><USER4> Your pseudo-intellectualism is painfully obvious here. French postmodernism (Foucault, Derrida) is very different from critical theory of the Frankfurt school. It's a token sign of someone who hasn't read any of them to lump them together.

The influence of Kantian ethics on Marx and Adorno's philosophy is very strong. Kant was a genius but in many ways his morality was stuck in the worldview of 18th century bourgeois. These modern authors chose to update his work instead of simply repeating it as dogma. Ironic that you describe Marxism as a religion, then. No, Kant is not the "opposite" of a Frankfurt school philosopher, and you'd be hard pressed to find any reputable scholar who would agree with that. A better "opposite" might be someone more contemporary, like Austrian economists, Karl Popper, or logical positivists.

Also, why not reply to my post directly instead of I subtweeting me? You should probably read more before you accuse others of "philosophical disinfo."

</comment></comment><comment><USER9> A more updated version would be that neoliberalism is the opiate of intellectuals. Much (but certainly not all) of Marxism has held up rather well in retrospect (especially teh critique of capitalism), especially in the conditions we face in 2020.

<comment><USER7> > A more updated version would be that neoliberalism is the opiate of > intellectuals.

The real opiate of the intellectuals is _any system_ that gives you the belief that you've got things mostly figured out. Neo-liberalism definitely qualifies for some, but so does Marxism.

However, given the current state of things, there's probably more value to be had now from reading Marx than some venerable free market tract. Just don't let it go to your head.

<comment><USER9> Oh sure, there's very serious problems with orthodox Marxism. It gets somewhat of a pass because all historical communist regimes have started far before capitalism had run its course (which even now it hasn't necessarily). However, the dictatorship of the proletariat is just something I cannot buy ever working out without the revolutionary vanguard just turning into the new masters.

This is a critique that left-anarchists have always had of Marxisms. However, Marxism also has a point that a complete economic overturning is impossible without force, necessitating a vanguard anyway. So, I don't think anyone can remotely say what comes after our economic system.

<comment><USER10> This is what I always wondered. Where does the claim to political legitimacy come from if force is required?

<comment><USER9> There's no such thing as political legitimacy, at least in terms of the philosophical concept existing in reality. Legitimacy in practice just means that there are not enough people opposed to a regime to take it down. It's just really a restatement of whether people have confidence that it won't collapse.

</comment></comment></comment></comment></comment><comment><USER11> I think The Grand Scheme is the opiate of the intellectuals, and some regimes are friendlier to such schemes than others. If you have a set of top down rules that require your will to be imposed on others, a flatter hierarchy is a bug. A decentralized system like free market capitalism allows many tyrants to flourish, but petty ones in comparison. You want a central authoritarian who can materialize your wishes. Whether that authority is right or left wing is subsidiary. Marxism has just been a convenient vehicle for such schemes, as it has had considerable momentum, and its authoritarianism is somewhat cloaked.

The best antidote for this opiate is probably humility: the awareness that maybe, given the details on the ground, you don't have a one-size-fits-all solution that's better than what people chose for themselves. But many intellectuals seem to have unusual resistance to this medicine.

<comment><USER12> It's obvious you don't know anything about Marx because you are contrasting "top down rules" (allegedly communism) to a "decentralized" capitalism.

Even a cursory reading of Marx would dispel both mistakes.

<comment><USER8> In Marx's own time, he was one of the main people who split the workers movement between his own ideas (his form of Communism) and the anarchist ideas of Bakunin or of Proudhon. People saw the authoritarian prospects of his work in his own time. They all want the same thing - a world without hierarchy. Though it's a great irony that one method relies on hierarchies to try to achieve a "stateless, classless society"

Maybe that term "Dictatorship of the Proletariat" was a mistake. Stalin and Mao were proletarians, after all...

<comment><USER12> Even by this ill-informed left-com critique, Marx and Bukunin both share a vision of a stateless, classless society based on free association and a practical end to resource scarcity. Not "top down rules" as the original poster simplistically described.

As for "dictatorship", it's easy to find out for yourself that this state of society is massively more democratic than the dictatorship of the bourgeoisie we live under in capitalist democracies.

In Soviet Russia, the dictatorship of the proletariat (i.e. the period immediately after the October revolution, not the Stalinist bureaucracy) was obviously necessary to win the civil war against foreign-backed counter revolutionaries. If the Red army lost the civil war, Russia would have been ruled by the fascist Black Hundreds.

</comment></comment></comment></comment><comment><USER13> Sorry but why was this posted here? This is Hacker news not the national review.

</comment><comment><USER12> It's awesome to see criticisms of Marxism on the one hand attack its rigid dogmatism, and on the other hand attack its vague, mystical dialectics.

I've been a marxist for 10 years and it's extremely rare to see a criticism of Marx that accurately describes the ideas of scientific socialism. Probably the best is Dr Shapiro from Yale: [https://youtu.be/s6MOA_Y3MKE](https://youtu.be/s6MOA_Y3MKE)

Even he professes to have discoved "fatal" flaws in Marx which I don't think are actually fatal, and maybe don't even agree with. But overall he at least gives an honest, and critical account. He practically stands alone in this regard.</comment>


Instant, Isolated, Development Environments with Docker and Nanobox - <AUTHOR> https://nanobox.io/app-development-environment/ <comment><USER2> From both the blog post and the website, it's not clear to me what this buys me over plain Docker (or possibly Docker + Compose). Is this a Compose competitor?</comment>


A Computer to Rival the Brain - <AUTHOR> http://www.newyorker.com/tech/elements/a-computer-to-rival-the-brain <comment><USER2> Neuromorphic computing is cool. We need to move towards stochastic logic as well. Since the universe behaves in a roughly stochastic manner, we're going to need to adopt this paradigm if we want to continue miniaturizing. Hopefully that will let us transition smoothly over time towards quantum computing.</comment>


Aliens are watching us, says an MIT Scientist - <AUTHOR> http://www.ibtimes.co.uk/what-zoo-theory-bizarre-thesis-attempts-explain-why-aliens-are-yet-contact-us-1653220 <comment><USER2> Suppositions and theories proof nothing. They are just smart guesses. I hate it when reporters imply that if it's said by a smart person or institution then its true. I call BS.</comment>


Ask HN: Recommended readings/books about Ruby - <AUTHOR>

Just asking everyone experienced with Ruby: Any Highly rated/recommended book(s) about Ruby (not Rails, there's a lot of recommended stuff about Rails via Google)? Also great if there are good blogs/readings I can check out. Thanks HN! <comment><USER2> Everything by Avdi

[http://devblog.avdi.org/](http://devblog.avdi.org/)

</comment><comment><USER3> Well Grounded Rupiest.

</comment><comment><USER4> Eloquent Ruby</comment>


A Privacy Analysis of the HTML5 Battery Status API [pdf] - <AUTHOR> http://eprint.iacr.org/2015/616.pdf

<comment><USER2> Why would you even give websites that info?

<comment><USER3> Just off the top of my head...

\- Disable the HTML5 Vibration API if battery power is low.

\- Increased network activity is battery is full or charging.

\- Project how much time a user has to complete an activity before the battery runs out.

\- Change page colour scheme to reduce battery drain.

This is a really useful API - especially if it reduces "range anxiety" for mobile users.

<comment><USER4> \- Vibration should be disabled by the OS, not the apps.

\- Network activity should be as predictable as possible, because people often have to pay by the megabyte, and any "smart" changes in activity increase the chance that people will be unpleasantly surprised.

\- The OS should predict remaining battery life, not the apps. If there's going to be a new API it should let the apps inform the OS of future activity so the OS can make better predictions.

\- Changing color to reduce battery drain only makes a noticeable difference with OLED. It will annoy the more common LCD users for no benefit to them.

<comment><USER5> It also assumes lower battery power always means you want lower power consumption. You could have a full battery but not have a charger with you and want to make it last as long as possible.

</comment></comment></comment></comment><comment><USER6> I just skimmed the article, but it seems like this is only a concern for Firefox running on Linux due to the enhanced precision.</comment>


Ask: When building a new app from scratch, should I use Swift 2.0/Objective C? - <AUTHOR> <comment><USER2> If you are asking if Swift is ready for prime time I'd say that it is. Of course there are many more considerations than that when decided on what language to use for a project. Consider your experience, timeline expectations and if you are familiar with the problem space or type of application or not. Introducing too many unfamiliar technologies or trying to solve hard problems with new tools you don't know well is a good way to get poor outcomes or at the very least eat up more time than expected.</comment>


Mark Zuckerberg 2017 Challenge - <AUTHOR> https://www.facebook.com/zuck/posts/10103385178272401?pnref=story <comment><USER2> > Going into this challenge, it seems we are at a turning point in history. > For decades, technology and globalization have made us more productive and > connected. This has created many benefits, but for a lot of people it has > also made life more challenging. This has contributed to a greater sense of > division than I have felt in my lifetime.

I don't follow. What exactly has technology made more challenging for people? Certainly not communication.

What sense of division is he talking about? Are those weasel words for the US election?

<comment><USER3> I suspect that passage is more about wealth inequality.

<comment><USER4> That he contributed to.

<comment><USER5> Marginally, yes he's loaded but Facebook didn't destroy thousands of smaller mom and pop businesses and concentrate whole sectors of the economy like Amazon, or hundreds of newspapers and advertising agencies like Google.

Facebook is totally too powerful and far too greedy but I wouldn't blame it for inequality.

</comment></comment></comment></comment><comment><USER6> Between this and [https://www.washingtonpost.com/news/acts-of- faith/wp/2016/12...](https://www.washingtonpost.com/news/acts-of- faith/wp/2016/12/30/mark-zuckerberg-says-hes-no-longer-an-atheist-believes- religion-is-very-important/?utm_term=.d30eccfd4c8b)

Is this Mark trying to better understand why 2016 election happened (going against the data), or maybe he's opening himself up for a potential political future.

<comment> I-M-S With him recently having eschewed atheism [1], I'd definitely say the later.

[1] [https://news.ycombinator.com/item?id=13287304](https://news.ycombinator.com/item?id=13287304)

<comment><USER7> Do you think he's going to try to compete against Trump in 2020 or just local politics in California?

<comment><USER8> I was thinking he has a lot of years before he'd be eligible to be president (has to be at least 35), but he'll be 36 in May 2020.

Not that Trump will still be president at that time... (Just like everyone said he won't win the primary, etc, etc)

<comment><USER6> I disagree with that. Like the ethics thing showed. The republicans without trump are more lost than the democrats.

If Trump survives the stress of being president, and still runs he'll win the primary. Or he'll pick his successor, maybe his Daughter or her husband.

</comment></comment></comment></comment></comment><comment><USER9> Will his celebrity status prevent him from getting a "real" sense of the places/people he visits?

<comment><USER10> I think this largely depends on who he goes to visit. It's very probable his status will prevent him from meeting people, but I think he can get around this. I'd love for him to meet my father. He's a recently retired immigrant chef, doesn't own a Facebook account, doesn't care who Zuckerberg is, but would provide him with great conversation on his struggles and challenges with technology as well as the best meal of his life. If I know someone good to talk to that is this close to me while being in the field of tech, I'm sure he can find good people to meet as well.

<comment><USER11> Sorry about this, but I feel it is important:

 _doesn 't own a Facebook account_

Nobody _owns_ their Facebook account.

I feel this is important because we need to be careful and aware of the language we use when talking about these services.

</comment></comment></comment><comment><USER12> My personal challenge is to contact someone in every state with ham radio. It's far more energy efficient, and within my budget.

</comment><comment><USER13> I've been in every state except Arkansas ... perhaps some day I'll have a reason to go there (or at least reroute a road trip to pass through).

<comment><USER14> Being able to claim that you've been to every single state is a great reason to go there!

</comment></comment><comment><USER15> so a mission to make the world more open and connected is being joined with a mission to figure out how the first mission made the world more closed and disconnected. snark aside, it's good to see, but if he's interested there's some very good analysis on root causes already.

</comment><comment><USER16> A bit underwhelming

</comment><comment><USER17> I think this whole PR circus for him has one important goal - he seems to be shooting to be a US president one day and this is him laying extensive ground work. We are going to see more of that in the future.

He can't get much higher in the business world and it's pretty clear he's an egomaniac who wants more power. That's my theory anyway.

<comment><USER18> My cynical side is agreeing and also putting a different context around the charitable LLC he announced a year ago in his daughters name.

I think it's a pretty scary scenario to have a person with such a high percentage of the world's personal information at his fingertips seeking the highest office in the land.

This is also the guy who decides the algorithms that control what news those people see (or don't see) on his platform and is also the guy who also carried out a study to see how his platform can manipulate his users emotions.

<comment><USER19> _Published_ a study on how his platform can manipulate its users' emotions. There are hundreds/thousands of studies on millions of people being carried out each day. And we probably won't hear about any more of them (unless they're really really cute).

</comment></comment></comment><comment><AUTHOR> tl;dr: My personal challenge for 2017 is to have visited and met people in every state in the US by the end of the year. I've spent significant time in many states already, so I'll need to travel to about 30 states this year to complete this challenge.

Also remarkable, imo:

This has contributed to a greater sense of division than I have felt in my lifetime. We need to find a way to change the game so it works for everyone.

<comment><USER20> It would be a bit more remarkable if he explicitly took some responsibility for it instead of just speaking vaguely of the role of technology in that sense of division.

<comment><USER21> Why would Zuckerberg be responsible for it?

Do you think that the Balkanization of social groups didn't occur before Facebook? Facebook is a reflection of one's social group.

<comment><USER20> The filter bubbles are getting more severe imo because FB wants to be a news source.

Simple illustration: [http://graphics.wsj.com/blue-feed-red- feed/](http://graphics.wsj.com/blue-feed-red-feed/)

<comment><USER21> How do you get that feed on Facebook? I never see that stuff on mobile or desktop, just the terrible articles posted by my Facebook friends.

Thanks for posting that WSJ link. The example articles were horrifying.

<comment><USER20> I don't have much insight beyond their posted methodology which I have only a superficial understanding of.

[http://graphics.wsj.com/blue-feed-red- feed/#methodology](http://graphics.wsj.com/blue-feed-red-feed/#methodology)</comment></comment></comment></comment></comment></comment>


Show HN: Slack-Backup - Open Source Slack chat history backup written in Python - <AUTHOR> https://github.com/suoinguon/slack-backup

<comment><USER2> I don't understand how this works. Once I authenticate with the free SaaS model hosted on Heroku it doesn't give me an option to pick a channel and back it up.

<comment><AUTHOR> I think maybe my current application client_id is not allowed to read your data.

Usually, It will automatically parse all the channels and you don't have to choose anything after authenticate.

Maybe you should try to install in your own heroku host .</comment></comment>


I've implemented a new HTTP/1.1 request and response parser by hand - <AUTHOR> http://four.livejournal.com/1033160.html <comment><USER2> For a couple of reasons this code doesn't look like a very reliable one...

Almost identical cases don't reuse code (not even a define). There are also sections like "`if (usual[ch >> 5] & (1 << (ch & 0x1f))) break;`" without any comments. The code hardcodes the http methods for some reason so that the detection code spans ~130 lines (454..580). Looks like it will accept "HXXX/1.1" if strict checking is off. This double check is... interesting:

        if (!parser->FOR##_mark) return 0; \
        assert(parser->FOR##_mark); \

Sure - speed++, but at what cost? Otherwise... cool code - I like the MARK / CALLBACK macros.

<comment><USER3> "I can make it arbitrarily fast if I don't actually have to make it work": [http://blogs.msdn.com/larryosterman/archive/2009/09/29/i-can...](http://blogs.msdn.com/larryosterman/archive/2009/09/29/i-can- make-it-arbitrarily-fast-if-i-don-t-actually-have-to-make-it-work.aspx)

<comment><USER4> I'm disappointed that the student who hardcoded the results was disqualified. You should get points for finding bugs in your professors' specification.

<comment><USER5> Not to mention the "winning" entry did exactly the same thing: found an `n' # of words which works _for this input only_ , then created a fast algorithm that works _for this input only_ , but is incorrect in general.

<comment><USER6> Especially since the other solution that got docked for breaking the rules actually performed the calculation that was requested.

</comment></comment></comment></comment></comment><comment><USER7> At my company we rolled our own too. The hard part was tracking down all the brain-dead servers that seemingly worked fine with browsers, but were off spec.

<comment><USER8> Are there any good sets of HTTP compatibility tests which test deviations from the spec which show up in existing servers/browsers?

<comment><USER9> <http://coad.measurement-factory.com/>

Warning: not free.

</comment></comment></comment><comment><USER10> It has also been merged into node. This thing is starting to be a case study for optimized C network servers.

</comment><comment><USER11> I need to dig through my old computer and find my college lab assignments where we built a basic HTTP/1.1 server. For the request parser, we had to create a lex file for a grammar that include actions for all of the verbs, and also be robust to accept non-standard verbs, i.e, return a 400 code.

I doubt that my yacc'd program would be only 124 bytes in size, but it would be interesting to get that old code and compare the results.

</comment><comment><USER12> Clever use of ## in preprocessor directives. <http://en.wikipedia.org/wiki/C_preprocessor>

</comment><comment><USER13> I thought it was a pretty cool implementation (zero memory alloc is pretty hard most of the time), though I was disappointed how HTTP methods were hard coded in, so adding a new HTTP method (like PROPFIND?) would be adding a ton of code, though I think you could make a few macros for doing HTTP methods and keep the rest of it.

<comment><USER14> Hacked together an on_method callback last night for the Python bindings I'm writing:

[http://github.com/davisp/http- parser/commit/50e54f95fd4c2eac...](http://github.com/davisp/http- parser/commit/50e54f95fd4c2eac59d669ef5e9e0e8b61a0955d)

</comment></comment><comment><USER15> By _hand_??? As opposed to what exactly? Isn't most code written by hand?

<comment><USER16> As opposed to using Ragel, as you'd have known if you'd read the link.

<comment><USER15> The title is "I've implemented a new HTTP/1.1 request and response parser by hand"

My question was, how do you implement a new HTTP/1.1 request and response parser if it's not by hand. Isn't most code written using hands?

I've written one too... big whoop.

Meh _anyway_...

<comment><USER2> Most parsers nowadays are generated via yacc and others. You write the structure, yacc generates the parser (and flex the lexer). It's something completely different if you write the parser yourself.

<comment><USER15> It was just a bit surprising to me. Parsing HTTP isn't exactly complex.

<comment><USER17> clearly you're unfamiliar with http.

<comment><USER15> I certainly am. It's a complete mystery to me. Is it like visual basic?

The only PITA with HTTP is chunked encoding. Whoever thought that gem up should be shot. The rest is fairly trivial. Certainly parsing headers is. This implementation looks pretty silly. Having individual states for each of the characters in "HTTP" etc? WTF?

edit: Instead of just downmodding me, why not explain exactly what part of parsing HTTP headers is non trivial?

<comment><USER2> The parser correctness is not trivial. The RFC2616 contains the complete grammar you need, so it's fairly simple to implement. OTOH, if you write a parser on your own, you're likely to miss stuff like section 4.2, which explains that header values can be multiline if they include LWS. The parser from this article will fail on (just looking at the source, I'm 99.5% sure of this):

        abc:
         def

It also doesn't like tabs and will not support comma-separated header values. It's not rocket science to write a "good enough" http parser, but writing a fully compliant one is something completely different. There are also cool parts of the spec that you can read 10 times and come to different conclusions - for example what does the "\" CR LF section mean if it's inside a quoted string and does it finish the header value or not. Writing a "correct" parser is a LOT of fun...

Keeping separate states for characters in HTTP saves you a couple of cycles probably, because you match as you go and can reject the message early and with the exact place that didn't match. It's a bit useless for a 4-letter string though.</comment></comment></comment></comment></comment></comment></comment></comment>


Twitter now tracking link clicks - <AUTHOR>

Maybe it's been going on for a while and I just noticed it.
Using twitters web interface I clicked on this link http://bit.ly/olSOg and below are the abbreviated headers that I saw:
GET /link_click_count?url=http%3A%2F%2Fbit.ly%2FolSOg&linkType=web&tweetId=3540807536&userId=2533331 HTTP/1.1 Host: twitter.com ...
HTTP/1.x 302 Moved Temporarily Date: Tue, 25 Aug 2009 19:30:15 GMT Server: hi Last-Modified: Tue, 25 Aug 2009 19:30:15 GMT Status: 302 Found Location: http://bit.ly/olSOg
...
GET /olSOg HTTP/1.1
Host: bit.ly
...
HTTP/1.x 301 Moved Permanently
Server: nginx/0.7.42
Location: http://www.wired.com/entertainment/theweb/magazine/17-09/ff_craigslist_makeover <comment><USER2> This is getting ridiculous -- they're double-shortening links! Aren't they a sibling to bit.ly anyway?

I don't understand why the fuck people don't implement link-click-tracking in JS on the client-side instead of fucking with URLs.

The tracking that Google now does for logged-in users on SERPs infuriates me -- it adds a ridiculous amount of latency when you're connected via 3G.

<comment><AUTHOR> Definitely makes it a double redirect now.

</comment></comment><comment><USER3> This seems semi-useless to twitter. I mean, between URL-shorteners and the fact that this method likely doesn't work with apps that use the API, I'd be surprised if Twitter's getting any meaningful data out of this.</comment>


New PayPal Exec Blasts Fellow Employees In Late-Night Tweets - <AUTHOR> http://www.businessinsider.com/paypal-exec-tweets-2014-5

<comment><USER2> I wonder what the correct crisis/communications strategy is. It's entirely possible that everything he said was true (I'd be shocked if a company the size and speed of PayPal didn't have a few insiders in key roles who were widely known to be horrible, but couldn't be fired for political reasons), but he's still going to get fired/resign.

Do you lay low for a while? Focus on some non-public-facing role (which is difficult for a Director of Strategy who is on CNBC/Bloomberg frequently as an analyst).

It seems like the main strategies are hide, try to minimize what was said, or double down on "PayPal has horrible problems internally, and I'm just so authentic I couldn't keep myself from calling them out in frustration while drunk."

None of these are great, but once it's done, what's the best thing to do?

</comment><comment><USER3> My favorite is the "Online Forums" section of the Whole Foods Code of Conduct:

[http://www.wholefoodsmarket.com/sites/default/files/media/Gl...](http://www.wholefoodsmarket.com/sites/default/files/media/Global/Company%20Info/PDFs/CodeofBusinessConduct2013.pdf)

The anti-astroturfing restrictions are good, but the approval requirements are ridiculous.</comment>


Tech in the Time of Covid-19 - <AUTHOR> https://forrestbrazeal.com/2020/03/13/tech-in-the-time-of-covid-19/ <comment><USER2> > I believe we will see tremendous innovation in health sciences over the next > decade, and a corresponding decline in some of the frivolous stuff that VCs > have been funding. And that would be a good thing for everyone.

This. These are the problems worth solving and investing in. The 2010s was the wild west of useless tech in a race to an IPO gold rush. Rinse and Repeat cycle to scratch ones itch. When something like a pandemic or privacy violations happen, little to no startups bothered to solve such problems for years until a scandal or a global disaster happens.

So yes to actually solving difficult world problems using tech, rather than creating frivolous 'tech startups' only for them to greedily raise billions from VCs for a IPO flotation.</comment>


How to DDOS yourself - <AUTHOR> http://devblog.bu.mp/how-to-ddos-yourself

<comment><USER2> Great example of why client side software is more exacting (and frightening) than building for the web. I wish I had more of these tales as ammo for future "native vs mobile web" debates.

<comment><USER3> What exactly protects web developers from this problem? Badly written AJAX- based code could do this just as easily as client software. Web development isn't a magic cure-all and it certainly doesn't protect you from the problem described in this post.

<comment><USER4> Part of the issue, a bit tangent to your point, is that when dealing with thick client software, once a version is released you can typically expect it to be in the field for quite some time. Many customers are upgrade-averse and simply won't upgrade a piece of software that is working suitably for them. Software developers have a bad habbit of fixing one bug and introducing another. With a web-based application you essentially control the release platform and can change things behind the scenes.

</comment></comment></comment><comment><USER5> How about this revolutionary idea: don't connect if you've got nothing to send. That way, the first power event sends the logs, and the next several hundred do nothing! Timeouts work great too. Don't send a log if you've just sent one in the last hour. Yeah, the android is acting weird here, but the problem is defiantly the application logic.

</comment><comment><USER6> One might wonder why they simply didn't limit the number of log sends per day. Then they would've had no zombies at all..

</comment><comment><USER7> This is why it's often a good idea to outsource tasks that aren't your business's core competency. I've used Flurry for mobile stats tracking because they've devoted a lot of time figuring out solutions to problems like this. Time I don't have, and DDOSs I don't have to diagnose.

</comment><comment><USER8> I guess just setting the phone to state to sending file while uploading the logs to the server was the solution. Is there a better way to solve this issue? The user did not put it as part of the article.

<comment><USER9> Meh, to me that's just band-aiding the problem. The core issue here is that they anticipate getting the log from each user approximately once every day or two (that's on average when people plug in their phones to charge). I would just keep track of the timestamp of the previous log upload, and simply ignore the Intent if it's within a certain threshold (say, less than 12 hours ago).

<comment><USER8> Do you think it makes sense with the mobile architecture to have an application store its current state? This is obviously a more general question regarding mobile application architecture. This would specifically to be handle broadcast listeners performing conflicting actions.

<comment><USER10> application state storage is part of the package with android isn't it? that's how apps always start up where you left off, even if the OS killed them to free up memory.

</comment></comment></comment></comment><comment><USER11> Testing software before shipping found to help reduce undesired behavior in the field, film at 11.

Also, unconditionally opening a connection before finding out if they even have data to shoot across?

<comment><USER12> Buying every existing phone that is sold in reasonable volume across all major networks in all major countries and testing them individually on each release is probably not the testing plan I would go with.

<comment><USER11> I didn't say that they should have tested it on every target, just that they didn't. They accepted the risks and were bitten by it.

</comment></comment></comment><comment><USER13> Great illustration of one of the many reasons why developing for iOS is easier than Android...no need to deal with buggy hardware driver edge cases.</comment>