Ask HN: CS or Business? - <AUTHOR>

I have just finished my four year enlistment as a contracting specialist for the USAF and am deciding on a career path.
My question is if there is any need for a contracting specialist with a computer science background at tech companies in silicon valley? or should i follow my peers who are getting a business degree, and working at normal run of the mill companies? <comment><USER2> You partly answered your own question. If you peers are mostly going down the business degree path, then you might be able to capture a niche due to your specialised skills and experience.

Is there any particular reason you specified Silicon Valley. With your experience there might be lucrative opportunities in other parts of the country as well.

It might be worth contacting some companies and seeing what opportunities exist. It is possible that you could find work on the strength of your current skills and experience and then you'd look at further studies based upon the needs that you uncover. It is a bit risky to get a degree in any area without research the opportunities available in that specific area.

</comment><comment><USER3> Its not about CS, Business or Mathamatics. Those who pursue what they are good at are not necessarily ones having supportive academic background. Just be yourself, and be the best at what you do. Also it takes time to find what you are good at. The best thing would be to talk to passionate people of their relevant fields. Then see what excites you most.

</comment><comment><USER4> You might find it interesting to check Linkedin for 94027 profiles with USAF backgrounds. There seem to a large number of USAF + Business profiles. Incidentally, that large network USAF veterans is a huge asset if you're looking for job opportunities.

</comment><comment><USER5> Think about what you WANT to do rather than the best paycheck. Yes pay is important, but if you spend most of your waking life working, you might as well enjoy it!

</comment><comment><USER6> Is there any way to get a Business and Computer Science degree? I have a friend getting a Bachelor's in Computer Science and then an MBA.</comment>


Design for an Audience - <AUTHOR> http://style.org/ku/ <comment><USER2> Being a designer is being a good communicator first. The rest is applying the gestalt. But it starts with putting yourself in the shoes of the audience and telling a story (visually).

This is why, no matter how much technology changes, from Paint shop pro, to Photoshop, to Sketch, to Figma, etc. Nothing scares a designer, because designing is a timeless skills with very few variants over time (gradients / skeuomorphic design / flat / combination ...) It's like how would you like your water, with a slice of lemon or ice?

Visual hierarchy, grouping, aligning on grids, contrasts, use of colours and tones, that's the part that's easily learnt. The why is where design is interesting.

<comment><USER3> You seem like you know a thing or two about design (I took a month UX design course where I came to the same conclusion). How would you go about learning design?

I ask this because learning how to code on your own seems -- in a way -- much easier. Just go on the internet, look up the necessary resources et voila, done. But that's not the case with design. So how could one self learn design?

<comment><USER4> You learn design by doing, being criticised and then thinking about it. The learning pace will be very variable depending on your background and time investment.

Learning design seems easy because the barriers to entry are almost unexistent: no matter how bad it is, most designs will somehow do the job. By the other hand, to get design skills that can land you a job might not be an easy task.

The _scale_ changes the best way to approach design. It matters if it's small scale (web/graphic/product), medium scale (architecture) or large scale (urban) but - with different weights - usability, proportions, trends, psychology/sociology and economics are always relevant. Anyway a good designer will adapt to a different scale within a short time: design is design.

</comment></comment></comment><comment><USER5> Design is easy... keep it simple... place stuff where it always is.. use modern fonts(one for headers text and other for paragraphs).. proper spacing ... .. color contrasting colors and one color that is opposite of all others used to highlight x. Also find another designers work you love and use it as a template/for inspiration.

I love designing and especially in code. I don't understand what's the point of wireframe designers yet I have been rejected by numerous interviews/jobs for being a design coder vs. a wireframe Designer.

<comment><USER6> Most of the time easy thing is not that easy. It needs proper understanding on user, context, demography etc. Most of the code generating tools creates junk and useless code with random ids which are hard for developers to integrate with logic, he has to change it to make it more semantic. Hence,companies look for specific people when they have a team of html designers separately.</comment></comment>


Show HN: Play games together on a big screen using your smartphone - <AUTHOR> http://www.airoplay.com/ <comment><USER2> That QR code needs to be a lot bigger. I have a 28" screen and had to wiggle my phone a good while to get it to register.

After getting connected i loaded up the racing game, my phone showed the controls, but half a second after the race started my phone went back to the "select the game" screen, while the game went on on my screen.

</comment><comment><USER3> My friends and I have a little bit of fun with Chromecast games, which seem to be in the same spirit.

[https://www.google.com/intl/en_us/chromecast/apps/](https://www.google.com/intl/en_us/chromecast/apps/)

</comment><comment><USER4> I've always wanted to build something like this for cinemas to feature before the movie starts

<comment><USER5> Cineplex in Canada does trivia through phones before the movie starts. You connect to their wifi network and answer the questions in their app and the winner gets some sort of prize at the end. They show the leaderboard and such in between questions.

<comment><USER6> The movie theatres in Vancouver aren't as busy in the off-hours too. I've known a few coworkers that have have had little-to-no competition for winning free tickets at company-sponsored movie days.

</comment></comment></comment><comment><USER7> There's also this

[http://docs.happyfuntimes.net](http://docs.happyfuntimes.net)

No app needed on the phone

and this

[http://airconsole.com](http://airconsole.com)

and this

[http://ibidex.com](http://ibidex.com)

</comment><comment><USER8> Not sure if you're just getting a lot of 'love' from HN at the moment but I found both games I tried (tank battle and space race) unplayable, don't think I was being presented with the right set of menus.

Tank battle just didn't start (and I was stuck there until I crashed the app and rescanned the qr code)

Space race did start and work but then I couldn't move on after the race finished.

</comment><comment><USER9> I have had success doing this years ago with just a normal Monopoly or Risk PC game and the Logitech mouse app (though you have to make sure there are no bad actors and that it's turn based as there can be obvious problems with multiple input devices).

</comment><comment><USER10> There is a suite of Jackbox games like this that are really good. Particularly, Fibbage: [http://jackboxgames.com/project/fibbage](http://jackboxgames.com/project/fibbage)

</comment><comment><USER11> looks like a copy cat of airconsole.com to me :/

<comment><USER12> What do you mean exactly? The site doesn't look the same and it's not like there's only room for one company using this technology.

</comment></comment><comment> dan-silver Did we just HN the game? Seems to be freezing and quit a few times.

</comment><comment><USER13> This is exactly what I'm working on: puppets.life/demo

</comment><comment><USER14> Why the Android app? This could have been done with web tech, which would have made it work on any touch device.

<comment><USER15> Maybe they work with Androids or enjoy coding for Androids or don't know how to do it on the web or any one of a myriad of reasons?

This isn't a very relevant or constructive comment. It's just saying "why didn't you build something completely different," which, I think, is sort of condescending/non-productive.

<comment><USER14> It's your own comment that's not relevant or constructive. I've made a valid point.</comment></comment></comment>


Habits of Highly Focused People - <AUTHOR> https://nickwignall.com/6-habits-of-highly-focused-people/ <comment><USER2> One of the best tools to eliminate distractions that I've found is the Forest app: [https://www.forestapp.cc/](https://www.forestapp.cc/) . Simple concept, install both the phone app and browser extension, set a timer for 25 minutes to 2 hours and click start. It will block any websites you have listed as distractions, and prevent you from compulsively checking social media on your phone. If you make it to the end of the timer, you get a tree in your weekly "forest". If you fail the timer, the tree dies. It's a really basic thing but it helps tremendously. Social media and media in general is an addictive substance that needs to be carefully managed.

<comment><USER3> Tried this app on my iPhone, but in the end, I don't really care about a picture of a virtual forest having one more or less tree in it...

<comment><USER4> There's a similar app called Focus Timer that does this without the trees. It only counts the time spent if you keep the phone face down.

</comment></comment></comment><comment><USER5> Different things work for different people. Try to look at your behaviour and notice when you are focused. Do more of that. Ditch distractions.</comment>


Show HN: P4K Prowler - A Pitchfork Reviews Scraper built in Meteor.js - <AUTHOR> http://p4kprowler.meteor.com/

<comment><USER2> I like it, are you going to build any features on top of that? Top lists, average ratings, trending albums, anything to differentiate the results from a simple google search?

Right now it doesn't really offer anything over just typing "albumname + pitchfork review" in my browser bar which also has the advantage that Google is ignoring small typos ("kayne west" will result in "Your search yielded no results, try again!" while it'll ignore it if I'm using another search engine, now sure if it's the same thing with small errors like a missing accent).

<comment><AUTHOR> Yes! I do want to keep working on this. I would like to build a small user base and get input on what could feature should be worked on next.

I have in mind user generated and share-able lists, and trending albums is also a very reasonable possibility. Also, the searches do not offer too many input parameters to the search so that is something I would like to fix.

Since you've posted that, I've changed how the search is done and it should be a lot more responsive now. I have access to Pitchfork's autocomplete API so I could use that to work around the problem possibly. Do you have any ideas about this?

Thank you for the thoughtful input.

</comment></comment><comment><USER3> Nice work. I think Pitchfork throws way too much content at the user, so this is definitely something I could see myself using. Is there a particular reason you chose Meteor over other Node frameworks/libraries? Were you just intrigued by it and wanted to try it out?

<comment><AUTHOR> Thank you for checking it out!

Not in particular apart from the fact that my first web development project ever which I put out last December was done in Meteor: [http://mixtape.meteor.com](http://mixtape.meteor.com). It was a collaborative YouTube playlist app.

Since then I've worked with other more mature MVC frameworks, but I find that I'm still able to produce my weekend projects a lot faster using Meteor. I also like the free hosting (and easy deployment) on a .meteor domain it offers.</comment></comment>


Walmart to Buy Bonobos, Men's Wear Company, for $310M - <AUTHOR> https://www.nytimes.com/2017/06/16/business/walmart-bonobos-merger.html <comment><USER2> This is a great move by Walmart.

It is targeted directly at competing more effectively with Amazon. I don't believe either company is worried about dilution of their respective brands.

What Walmart needs is to keep leveraging its existing strengths — logistics and supply chain, as well as immense amounts of capital — while invigorating its online retail division so that over the next 20 years, they can appeal and sell to their target demographics (which is what millenials will become) with the same stickiness that Amazon does.

Bonobos is popular among young male professionals that are relatively fashion- conscious. There are many workplaces in New York where the majority of new grads and millenials buy most of their wardrobe from Bonobos. The key — Bonobos is often the first place they look at. Andy Dunn has demonstrated he knows how to build a business that's both sticky and appealing.

He's joining an online retail division headed by Marc Lore, and a Walmart that is shifting gears to face the Amazon behemoth.

Purchasing Bonobos is part of their strategy of capturing audiences and market-share in the short-term, and of building a portfolio of brands that they can continue to expand for the long-term.

Bonobos (as well as other recent acquisitions), and Jet.com, which Walmart acquired August 2016, are brands that were born online and grew online. These acquisitions mean people like Marc Lore and Andy Dunn, well-versed in the art of courting a customer base through primarily-online channels, are now at Walmart. And I foresee this trend continuing as Walmart's ship slowly but steadily steers towards the age of online retail.

<comment><USER3> The people you mention really dislike Walmart.

Still a smart move as it lets Walmart snag some mid-america market share from Gap/Banana Republic/Old Navy (the last makes most of the money anyway).

<comment><USER4> Yes, as someone who almost exclusively wears Bonobos and is a relatively young professional I'm super worried about this. I've been to Walmart probably not more often than the times. I can only assume and hope that Walmart did this to get access to people like me and not to transform Bonobos to cater to people who wear three wolf shirts.

<comment><USER5> I wouldn't be very optimistic:

> "Assortment is driving a lot of these acquisitions," Wal-Mart Chief > Executive Doug McMillon told investors last month before the ModCloth > acquisition became public. "There are some suppliers that don't want to sell > on Wal-Mart."

To me, that sounds like a plan to make Bonobos (or Moosejaw) a Wal-Mart company rather than to apply Wal-Mart's expertise to the acquired company.

[1]: [https://www.wsj.com/articles/wal-mart-in-talks-with- bonobos-...](https://www.wsj.com/articles/wal-mart-in-talks-with- bonobos-1492534209)

</comment></comment></comment></comment><comment><USER6> I have never heard of bonobos before.

Also, Walmart is trying to get more into online business and Amazon is getting into brick and mortar stores to marginalize walmart and target even more. Interesting.

<comment><USER7> Bonobos is super expensive. I don't know how folks can afford to shop there. It would kill me to spend $300 on 3 dress shirts when I can get the Kirkland Brand for a fraction of the price. Even their sweat shorts are $80 and the Nikes I have were $15 on sale. The cheapest you can get a pair of jeans for is $100, Eddie Bauer has really nice jeans for half of that when they are on sale.

I get the feeling Walmart is desperate to compete and will buy anything these days when all they really need to do is build a Web site that is easily navigable and works. You think a company with their resources could afford the talent required to build a site like AMZN has.

<comment><USER8> > Bonobos is super expensive. > I can get the Kirkland Brand for a fraction of > the price. > Eddie Bauer has really nice jeans

Bonobos sells itself as an affordable yet fashion-forward brand, so perhaps you're just not the target consumer?

<comment><USER9> Yeah, $100 a shirt is fairly competitive with other fashionable brands.

I end up buying more expensive shirts just because I don't feel as bad about having to have them altered. My arms are really long and my neck/shoulders are really broad relative to my height, so even slim or "extreme slim" dress shirts have a tendency to billow out of my pants unless I have them taken in, and I always have to have the arms slimmed significantly as well. When you spend that kind of money to have the clothing altered, you might as well spend a little extra to alter nicer clothing.

<comment><USER10> Take a look at TMLewin and CTShirts. I think they offer the best value in shirts. Spending more than 60$ on a shirt is not necessary.

I don't know about US, but in Spain you can get a tailor made shirt for 100$.

<comment><USER11> CT definitely offers some of the best deals. Kamakura offers extremely high quality shirts for $89, though. Bonobos is just not high enough quality to support the hundo price point.

</comment></comment></comment></comment></comment></comment><comment><USER12> I feel like walmart through no fault of their own has a bad brand in certain groups and would be well served by creating some sort of alternate brand to umbrella its acquisitions. Some people look down on those who shop there and in order to target those negative often times web savvy people they should create a child brand.

<comment><USER13> Walmart is plenty at fault for their brand's image. Until very recently, they've been on a trend of pushing workers harder, driving suppliers to produce shoddier and shoddier products, lying about potential jobs to get small towns to subsidize building stores that run local companies out of business, then moving those stores to new locations and refusing to let competition lease the empty building they left behind, intentionally screwing around with employee schedules to make it hard for them to keep the second job that they need, making life miserable for long-time workers so they can avoid paying more than entry-level wages... the list can go on. Walmart has no one but itself to blame for its image.

<comment><USER12> While I agree with you in regard to wages and their employees treatment, I was referring to the way monied people view the store and those that shop there.

</comment></comment></comment><comment><USER8> I heard of Bonobos quite a while back but never handled a pair of their chinos until about a year ago while shopping at Nordstrom. They certainly hit a price point for people that would get sticker shock from some brand like Adriano Goldschmied, but the quality of the pants is a bit out of line even for $90... so I guess there is a bit of irony in Walmart buying them :)

<comment><USER14> That's too bad. I've heard a lot about them, but never tried on a pair. However, I do have a pair of AG chinos that I bought on sale and they fit like heaven.

<comment><USER8> I wanted to like them but the material just felt shoddy.

AG chinos are undeniable proof of a higher power... they are incredible pants and worth every penny.

<comment><USER15> AG jeans are the brand I wore for a long time. They fit great and flatter me right out of the box, no tailoring required.

But the material is a bit thinner and doesn't hold up as well as raw denim. However, raw denim is a bit more of an investment. It takes 2 weeks of constant wear for raw denim to feel "right", and you're supposed to buy undersized and let them stretch to your body. Once you do that, they're really nice. However, before that happens, it's like wearing a lower body straitjacket.

</comment></comment></comment></comment><comment><USER16> Is this a regular ecommerce valuation? Would be 2x revenue @150 Mio [1].

[1] [http://www.retaildive.com/news/report-bonobos- raising-100m-t...](http://www.retaildive.com/news/report-bonobos- raising-100m-to-expand-brick-and-mortar-footprint/429879/)

<comment><USER17> That multiple doesn't seem crazy for a relatively early stage ecommerce startup. But, I'm guessing the acquisition price was based more on Bonobos' private valuation. Bonobos has raised ~$125 million so a $310 million valuation would be reasonable.

[https://www.crunchbase.com/organization/bonobos#/entity](https://www.crunchbase.com/organization/bonobos#/entity)

</comment></comment><comment><USER18> Is this a good outcome for those involved? or was it a mercy deal a la modcloth?

I know long haul for everybody, esp Andy. Looks like money raised is less than purchase price, so is there some meat on the bone in this acquisition?

<comment><USER19> Looks like an acquihire. Andy seems to be getting a pretty decent position within the upper management of the ecommerce division at Walmart.

This is all speculation: Perhaps it's part of some sort of internal coup within Bonobos, where Andy wasn't happy with some internal board/finance shenanigans. By taking a lesser valuation but moving into a big position within Walmart (likely with huge bonuses), he could end up getting reimbursed at a level disproportionate to his equity at Bonobos.

</comment></comment><comment><USER20> Walmart Labs, their e-commerce division has been on an acquisition frenzy for a while now. I recently interviewed there for a role that was directly involved with the M&A activities regarding technology and infosec.

Just look at the list of acquisitions here: [https://www.crunchbase.com/organization/walmart/acquisitions](https://www.crunchbase.com/organization/walmart/acquisitions)

</comment><comment><USER21> WHY? I've bought most of my clothing from Bonobos for the last few years, I guess I'll look elsewhere now.

> Partnering with Walmart — the biggest bricks-and-mortar retailer around — > might have seemed extremely off brand for Bonobos.

YES it is. And "I think Walmart is misunderstood in some ways." isn't an explanation. Bonobos and Walmart are totally different in my mind, I can't imagine I'm the only Bonobos customer disappointed by this change.

<comment><USER22> Is it though? I've found Bonobos to be of mediocre quality and boring design which doesn't call for the price point they are at. For $125 you can start getting some really nice shirts from other brands (Saturdays NYC, La Paz, etc).

I think they probably can lean on Walmart to lower their production costs and possibly cut their prices to offer Walmart customers an option that is above their typical retail choices.

<comment><USER23> Aren't they known more for their pants? Their athletic fits are perfect for me.

<comment><USER24> Afaik, they're talked about a lot in terms of their actual-slim and really- slim (aka tailored) stuff vs the poorly cut or unavailable true-slim at other retailers.

</comment></comment></comment></comment><comment><USER25> If i recall lore and/or Mcmillon said they are going to become experts in the product and online merchandising in Wal-Mart's various departments. Like apparel, sporting goods, housewares & domestics, pets, jewelry, auto, craft & celebration, gaming. To be the best at knowing at the product level.

</comment><comment><USER26> If only Wal-Mart had better branding...

<comment><USER27> This might be what they're trying to buy here, dunno if it will work, but they've got the capital to try out a variety of things.

<comment><USER26> Very true, it just remains to be seen whether the "main street murderer" stigma will remain despite this push

<comment><USER28> seems like 2 different aspects of the brand

the perception here seems to be that Wal Mart only sells stuff that 'people of Wal Mart' want to buy

there's is probably plenty of room in Wal Marts brand to get at - 'we sell everything, down market stuff and up market stuff'

\</comment></comment></comment></comment><comment>--

wal mart's impact on Main Street - while (somewhat) real - is a separate question

</comment><comment><USER29> For those who have never heard of bonobos, their pants fit exceptionally well. Andy & co focused on doing one thing, having quality pants that fit really well. The fit of the clothing matters more than anything about bonobos and it is where most brands screw up.

<comment><USER13> Do you mean they fit _you_ really well, or that they go out of their way to provide a big variety of styles, cuts, and sizes so that they potentially fit _anyone_ really well?

<comment><USER30> No, is not about a large variety of cuts and styles. They became well known because their pants, while generally on the slim side, don't make you look like a hipster in skinny jeans, but they also don't look like parachute pants. In the US, mass market men's pants tend to be really baggy and unflattering (aka "diaper butt") for anyone with a slim or athletic build, and that was the niche Bonobos filled.

In short, their pants just make your butt look good.

</comment></comment></comment><comment><USER31> How interesting to see Amazon and Walmart making major acquisitions on the same day.

One is for offense, the other is for defense.

Goes to show that the future is Amazon and not Walmart.

<comment><USER32> > One is for offense, the other is for defense.

I wouldn't be so sure of that. In our tech circle, Amazon is indeed the darling and we love to hate on Walmart. However the latter is definitely skilled at logistics and supply chain optimization. Walmart is skilled in cut- throat margin markets, with the power to shift the upstream supply in order to meet its own goals. They are also better positioned to serve a wider demographic than just the upper middle class.

<comment><USER33> Amazon is the _darling_. Where have you been, boy?

Seriously, Amazon comes in for more than its fair share of (often deserved) hate here on HN.

<comment><USER34> Though never quite reaches the level of WM

</comment></comment></comment></comment><comment><USER35> I am wondering what this means for solidus.io. It's the shop system powering bonobos, which is basically just a fork of Spree Commerce.

<comment><USER36> Highly worried for Solidus. I just started using it for one of my side projects.

Is this the time for another fork of spree/solidus?

<comment><USER34> Disclosure: Am at WMTech.

The project won't cease to see improvement in the open source version. Hell, we have a large team dedicated to open source for stuff exactly like this.

</comment></comment></comment><comment><USER37> This is going to be a disaster. They are anti-Walmart. Walmart needs to stay true to its vision of low price, high quality. Bonobos is high price, high end. "But for now, there are no plans to offer Bonobos's $98 chinos or $128 dress shirts in Walmart's 5,000-plus stores. Instead, Walmart is hoping to learn from Bonobos." Anytime you spend $310 million "hoping to learn"...you have no idea what your plan is and that means you fail when you're in e-commerce and aren't focused.

<comment><USER38> That's a pretty bold claim. It sounds like speculation to me, though. Do you have anything to back it up with?

<comment><USER37> It's very hard to make m&a work at high valuations. Very few companies have done m&a well -- maybe just facebook & google & apple to a lesser extent.

It's very hard to make e-commerce work. E-commerce is checkered with failure.

Not sure why they'd acquire a hybrid high-end retailer along with a bunch of other strange e-commerce firms. They seem to be focused on apparel -- may be some plan for apparel?!

</comment></comment></comment><comment><USER39> Quick, everyone buy a hipster company

</comment><comment><USER40> I would rather buy from a well known brand than spend almost the same amount at Bononos lol.

<comment><USER40> Also what I see interesting with Walmart is that they are pushing towards blockchain. If they actually continue in this path. It would beat the shiz out of Amazon.</comment></comment>


Google developing all-in-one messaging app for businesses - <AUTHOR> https://appleinsider.com/articles/20/01/28/google-developing-all-in-one-messaging-app-for-businesses <comment><USER2> Great, yet another Google messaging service I can be disappointed about when they randomly decide to shut it down.

<comment><USER3> Google is notorious for dropping it's free services. But this is obviously something they want to add to their office suite of google apps.

Apples and oranges

</comment></comment><comment><USER4> It's interesting to see the luke warm reaction to this and compare it to 10? years ago. Just the mention of Google moving into a new space back then seemed like a good send. Now... Not so much

<comment><USER5> As this sarcastic article from Ars Technica points out this is Google's 10th messaging App and the second slack clone.

[https://arstechnica.com/gadgets/2020/01/report-google- planni...](https://arstechnica.com/gadgets/2020/01/report-google-planning- tenth-messaging-app-this-ones-another-slack-clone/)

</comment></comment><comment><USER6> I use Twist by Todoist and one of the downsides is there is no built-in video chat.

<comment><AUTHOR> It looks great. Do you like it better than Slack?

<comment><USER6> It has its downsides, like I think the sender-chosen notifications over receiver-chosen notification was a mistake.

But at this point I would give my firstborn child to have real threads, and it does have that.

So I like it much better.

</comment></comment></comment><comment><USER7> ...in an attempt to take out Slack. Something that a monopoly would do.

<comment><AUTHOR> and Microsoft Teams</comment></comment>


Generating shell scripts from haskell using a shell monad - <AUTHOR> http://joeyh.name/blog/entry/shell_monad/

<comment><USER2> Sadly, this monad can't stop you from doing dangerous stuff in the first place, like iterating over the output of ls:

[http://mywiki.wooledge.org/ParsingLs](http://mywiki.wooledge.org/ParsingLs)

</comment><comment><USER3> Interesting, why not try to build this based on Shelly? ([http://hackage.haskell.org/package/shelly](http://hackage.haskell.org/package/shelly))

<comment><AUTHOR> I wrote this with shelly open in another window; it's intentionally got some similarities. It might be possible to extend shelly's Sh monad so it can generate shell code, rather than its current behavior of running IO actions, but that seems like a stretch to me.</comment></comment>


The Debunkers of a Gay Marriage Study Just Re-Bunked It, Sort Of - <AUTHOR> http://www.wired.com/2016/04/political-sciences-whistleblowers-rebunk-gay-canvassing-study/ <comment><USER2> NYMag had a great indepth piece about how the original study was debunked, and the fallout that occurred:

[http://nymag.com/scienceofus/2015/05/how-a-grad-student- unco...](http://nymag.com/scienceofus/2015/05/how-a-grad-student-uncovered-a- huge-fraud.html)

Some of my favorite takeaways from the whole thing:

\- How you should put time into making impressive-looking data visualizations, and to show them on a nice device. In this story, and a few others, academics and researchers talk about how blown away they were by the research because he had such great visuals:

> _The iPad thing was LaCour's trademark. "He was sort of famous for taking > his results from different studies he was working on, putting them on an > iPad, and buttonholing people at the conferences and going over all of the > research that he was doing, the different findings he had, and basically not > letting the people go until they had an idea of what he was working on," > says Tim Groeling, a communications professor at UCLA, who is listed as one > of LaCour's references on his curriculum vitae. "It was infectious," > continues Groeling. "Really cool stuff was on that iPad."_

\- There is an online forum that is pretty much like 4chan for the polisci community...this is where the study unraveled, in between all the anonymous shittalking and rumors about who's getting tenure and who they fucked to get it.

</comment><comment><USER3> I find the article's implication that replication of scientific studies is something invented at Yale in the 21st century beyond preposterous. And I'm certain that "Re-Bunked" isn't actually a word.

<comment><USER4> They implied that actually doing the replication of already published studies in the social sciences being considered a normal thing was the result, for these researchers, of being exposed to this attitude at Yale.

I don't know Yale, but I know enough to know this attitude had to come from somewhere, since the norm is that replication is not just unrewarded, but often actively discouraged. Hence the generally shittiness of social science results. This seems to be changing as the results of the combination of WEIRD bias, the filedrawer effect, these social norms and other problems have been recognized and done serious damage to the reputation of the social sciences (for good reason).

</comment></comment><comment><USER5> Wired now appears to block adblocking browsers, and then hits you with a large, autoplaying video ad if you whitelist them. Is this story covered elsewhere?

<comment><USER6> Use uBlock Origin and the 3rd-party filter "Anti-Adblock Killer | Reek" turned on. Works fine.

<comment><USER7> I use the regular uBlock (Safari here) but it lists the same filter. I turned it on and it didn't work. Are you sure it's not some other filter or plugin you have installed that's blocking this one?

Edit: Nevermind. After I clicked "Purge all caches" it immediately offered an update to that list, and after updating it works now. I don't know why it didn't offer this update originally since I hadn't had the filter enabled before.

Edit 2: Oops, it still doesn't work. It just waited until I started scrolling before displaying this time. I wonder if Wired is just A/B testing different approaches, including not having the blocker at all, and you just got lucky?

<comment><USER8> Don't use regular ublock it isn't well maintained and lets ads through for money.

<comment><USER7> I've never heard that it lets ads through for money, nor have I ever noticed that happening.

Also, I don't really have a choice, unless I want to switch to a completely different product. uBlock Origin made the decision to not support Safari despite the original uBlock it was forked from supporting it.</comment></comment></comment></comment></comment>


Planet of the Humans – Full Documentary – Directed by Jeff Gibbs - <AUTHOR> https://www.youtube.com/watch?v=Zk11vI-7czE&t=2s <comment><AUTHOR> it is surprising to know that what we called green energies are not green at all</comment>


Isign, you sign, now we all can sign apps - <AUTHOR> https://eng.saucelabs.com/blog/isign <comment><AUTHOR> Hey everyone. I'm proud to open source this, as it's one of the coolest things I've ever done – a reimplementation of Apple's code signing (well, enough for re-signing) that works on Linux.</comment>


Hisense A5 is a single screen E Ink Phone - <AUTHOR> https://goodereader.com/blog/smartphones-2/hisense-a5-is-a-single-screen-e-ink-phone <comment><USER2> Seems like this thing is going to be impossible to find. Any tips on tracking one down?</comment>


Craigslist automatic poster script - <AUTHOR> http://www.freelancingcrowd.com/craigslist/simplexlsx.example.php

<comment><AUTHOR> it takes your ads from excel file and posts it to craigslist automatically if anyone interested to buy it, pls contact me.</comment>


Ask HN: How is there not a full-featured open-source PDF editor/viewer? - <AUTHOR> For almost anything you can think of there is a pretty awesome open source version of that software but for the life of me I can't find a truly full featured PDF editor that's 100% free. As PDF technology has been the preferred document of business for the last 15+ years I'm really surprised there isn't at least one open source project that's been a mainstay in this niche?!? What am I missing? <comment><USER2> FRom [https://opensource.com/alternatives/adobe- acrobat](https://opensource.com/alternatives/adobe-acrobat)

Ah, this is where things start to get tricky. Or at least where they used to. The world has changed a bit and it turns out that recent versions of LibreOffice Draw do a fantastic job of editing PDF files, and not just adding and deleting pages as you might expect, but for editing text and images as well (so long as your PDF was created directly from a source document and not from a scan). It's not perfect, and I've had it choke up on a few more complex documents, but I'm still impressed with what a good job it does on many of the documents I've had to work with.

Inkscape, too, does a good job with opening documents created elsewhere, and may be a more intuitive choice if your document is heavy on graphics. There are standalone tools as well, like the GPLv2 licensed PDFedit, but I've had such good luck with Inkscape and LibreOffice that I haven't had to use a separate editor in recent years. So there are FOSS PDF editors, and LibreOffice certainly allows you to export to PDF virtually everything

<comment><AUTHOR> Yeah that's sort of the article that lead me to post here- like I tried to say in my title, there's not really a true "full featured" PDF editor/viewer that does everything.

There doesn't seem to be a GIMP to Photoshop type of product for PDF as far as I've seen.

</comment></comment><comment><USER3> The last few times I've had to edit a PDF I used xournal.

I haven't used any proprietary tools on other systems to compare, but maybe it's satisfactory. It's worked fine for what I've needed to do.

</comment><comment><USER4> What would you want it to do? Aren't PDFs usually created from non-PDF sources? I imagine it would basically recreate Word.

<comment><AUTHOR> I'm not even asking for that much really- split, merge, compress, convert from various formats, rearrange pages, work decent with e-signatures, and have options to create interactive fields. I've used quite a few of the "free trial" software from the big names and it's astonishing to me that there isn't an open source project that can accomplish all of this.

</comment></comment><comment><USER5> Because you've not written it yet? :p

<comment><AUTHOR> Ha, if only! Perhaps my post will inspire a few brilliant programmers here!

</comment></comment><comment><USER6> I think there is some issue with licensing from Adobe on this. Someone who knows more than me might educate us.

<comment><USER7> The standards related to PDF are open. [https://en.wikipedia.org/wiki/PDF](https://en.wikipedia.org/wiki/PDF):

 _"PDF was standardized as an open format, ISO 32000, in 2008, and no longer requires any royalties for its implementation"_

Also, [https://en.wikipedia.org/wiki/PDF#Intellectual_property](https://en.wikipedia.org/wiki/PDF#Intellectual_property):

 _"Anyone may create applications that can read and write PDF files without having to pay royalties to Adobe Systems; Adobe holds patents to PDF, but licenses them for royalty-free use in developing software complying with its PDF specification."_

It's a huge spec, though. For example, fully supporting PDF requires a JavaScript engine.

<comment><USER8> and half a dozen image formats, font formats, bits of PostScript, I think there is even some XML lurking in there.

</comment></comment></comment><comment><USER9> On Windows I use Sumatra PDF which is a great viewer. It uses the MuPDF library.</comment>


Recovering deleted files using grep - <AUTHOR> http://spin.atomicobject.com/2010/08/18/undelete?utm_source=y-combinator&utm_medium=social-media&utm_campaign=technical

<comment><USER2> Make sure your output file is on a different filesystem! Otherwise, it might be saved in the newly-freed blocks of the file you're trying to recover.

<comment><USER3> The author's intent is to write enough of the surrounding context that you recover it first time.

Still, it raises two questions:

What about fragmentation?

Why don't have a GNU safe-rm yet that moves files to the (freedesktop.org specified) trash location to avoid this?

<comment><USER4> Because you told it to remove the file instead of moving the file? I don't see why we need a safe-rm on the command line.

File managers already implement a trash function as per the freedesktop.org spec: <http://www.ramendik.ru/docs/trashspec.html>

<comment><USER5> > I don't see why we need a safe-rm on the command line.

I think this is hilarious. :-) Throughout Unix/Linux/BSD history, there is a steady series of essays, lamentations, wails, and gnashings-of-teeth regarding the recovery, attempted recovery, or irretrievable loss of really important data that got somehow mistakenly rm'd by some admin.

...and, _every single time_ , someone says, "Shouldn't this be made safer?", and _every single time_ someone else says, "Nope, rm is doing exactly what it's supposed to! Just be more careful!"

As if the huge volume of arcane commands and various scripting languages disguised as configuration files weren't proof enough that the mass of Unix/Linux/BSD admins and developers all share a common streak of masochism, we also seem hell-bent on ensuring that we have tools which can -- and eventually will -- bite us in the ass.

For my part, I think that having some form of undelete option standard in every file system is as obvious as keeping backups.

<comment><USER6> The problem is not Unix as much as it is the work habits that Unix users have developed. The rm command is hard core, and yet everyone (including me) uses it regularly. It would be much smarter to create a command named "trash" or "del" or whatever to instead move files to a trash folder. Then "empty-trash" could actually use rm.

Alternatively, just slow down a little bit before using rm, especially when operating as root. Understand that it's (intended to be) permanent. Use echo first when using rm with a splat in order to ensure you're actually deleting what you expect to delete.

The question, "Shouldn't this be made safer?" is irrelevant. At some level, you have to have an rm command. If users decide to use it regularly, then it's up to them to "Just be more careful!" The smarter thing would be to create a workflow that doesn't rely on using rm at all. Why whine and complain (not you, I mean users in general) about an operation that can be easily changed?

</comment></comment></comment></comment></comment><comment><USER7> If the file was on an ext3 filesystem, you can use ext3grep, written by Carlo Wood (<http://www.xs4all.nl/~carlo17/howto/undelete_ext3.html>)

(Grepping your hard drive for file fragments is suggested in the ext3 FAQ - <http://batleth.sapienti-sat.org/projects/FAQs/ext3-faq.html>)

</comment><comment><USER8> > To help prevent this problem from happening in the first place, many people > elect to alias the rm command to a script which will move files to a > temporary location, like a trash bin, instead of actually deleting them.

Whatever happened to backups?

To help prevent this problem...

KEEP A BACKUP.

<comment><USER9> The kinds of files I most often regret rm-ing are the temporary files I have created myself as a step in a process, then deleted after I had moved onto the next step, not realizing an error had crept into the processor and that I would have to run it again on the source files (which are now, conveniently, gone.) Backups don't solve this problem, because the files themselves are never more than an hour old. A "trash" folder, however, fixes this perfectly: the semantic is that the file no longer has any place it "belongs," and may be purged if you successfully complete the project, but may be needed again if the project must be "rewound" to that step.

However, you're right that making rm(1) express move semantics isn't the right solution. Maybe if the filesystem had a "BEGIN TRANSACTION" command that you could ROLLBACK...

<comment><USER6> Storage is cheap.... Why remove intermediate files at all? If you don't want to permanently remove files, then why use rm? Just create a "del" command that moves deleted files to a trash folder. You can then make part of your backup routine be to empty the trash after performing the backup (since that file would now be available in the backups).

<comment><USER9> You're right—it's more of a "these files are in the way, and I'm _sure_ I'm done with them... so it shouldn't hurt to just type those two little letters and reclaim the storage..."

Actually, that sounds like exactly the cognitive dissonance people had when they first started using Gmail. Perhaps filesystems need an "Archive" folder as well? Not even a Trash folder—because people want to _empty_ a Trash folder—but rather just an enforced (and shell-supported) directory where things go when you don't have any reason to keep them, and therefore have no place to put them?

</comment></comment></comment></comment><comment><USER10> Been there, done that. I rm -rf'd a bunch of important files once, and at the time grep was giving me "memory exhausted" errors. I was able to use strings to grab all of the text of the disk, and then wade through the results with vim.

I guess this is a pretty common problem. The blog post I wrote about it in 2005 continues to be the most searched-for entry point on my site: [http://csummers.com/2005/12/20/undelete-text-files-on- linux-...](http://csummers.com/2005/12/20/undelete-text-files-on-linux- ext3-partition/)

</comment><comment><USER11>
        cat /dev/mem | strings | grep -i llama

<comment><USER12> Hmm... I'm getting an error on that one.

        cat: /dev/mem: Operation not permitted

Edit: even as root

<comment><USER4> If I recall correctly, that's a bug that is preset on a particular kernel from 6-9 months ago.

<comment><USER13> It's not a bug:

x86: introduce /dev/mem restrictions with a config option <http://lwn.net/Articles/267427/> "This patch introduces a restriction on /dev/mem: Only non-memory can be read or written unless the newly introduced config option is set."

Command-line access to /dev/mem in Ubuntu [http://superuser.com/questions/39583/command-line-access- to-...](http://superuser.com/questions/39583/command-line-access-to-dev-mem- in-ubuntu)

<comment><USER4> Oh cool. Thanks.

</comment></comment></comment></comment></comment><comment><USER14> Where the author says conservative, he means liberal.

(From afar, I understand my Colonial cousins' struggle with these two words.)

<comment><USER5> Well, I appreciated your joke, anyway.

</comment></comment><comment><USER15> I've been using this method since i first learned about raw disk access (dev files) and grep.

I think it should be mentioned that this will work properly only if the file was not fragmented - Which will usually be the case in EXT3 unless you are using almost all of the space in the drive, but may happen frequently if you are using a FAT file system (which is used a lot in USB disks).

Also, If you just deleted a binary file this method will be problematic as well, and in that case you can use a tool like photorec to scan the disk and even limit it only to the free space on the drive - which reduce the time it takes to go over a disk and can detect all kinds of binary file types (uses the magic number of the file to detect the type).

Like other people mentioned here before, you should recover all the data to a different partition/disk than the one you are trying to recover a file from.

With that said - recovering data is a tedious and error prone process, so if the data is worth enough(and for some silly reason you don't have a backup) you should:

A. turn off the computer immediately after you've discovered the loss of data (to reduce the chances of overwriting anything important)

B.Give the computer/disk to a professional to recover (because you obviously aren't one since you don't keep backups)

<comment><USER16> Fortunately point A on Linux can be substituted with mount -o remount,ro /

</comment></comment><comment><USER17> Or, if you want to really delete a file, use #shred filename command

#man shred SHRED(1) User Commands SHRED(1)

NAME shred - overwrite a file to hide its contents, and optionally delete it

I especially like the -n option!

<comment><USER18> Except that shred is not guaranteed to work on many (most?) modern filesystems. From `man shred`:

           CAUTION: Note that shred relies on a very  important  assumption:  that
           the  file system overwrites data in place.  This is the traditional way
           to do things, but many modern file system designs do not  satisfy  this
           assumption.   The following are examples of file systems on which shred
           is not effective, or is not guaranteed to be effective in all file sys‐
           tem modes:

           * log-structured or journaled file systems, such as those supplied with
           AIX and Solaris (and JFS, ReiserFS, XFS, Ext3, etc.)

           * file systems that write redundant data and  carry  on  even  if  some
           writes fail, such as RAID-based file systems

           *  file  systems  that  make snapshots, such as Network Appliance's NFS
           server

           * file systems that cache in temporary locations, such as NFS version 3
           clients

<comment><USER19> It works fine on default EXT3. The only thing journaled is meta-data. You snipped that part out. More from man shred

In the case of ext3 file systems, the above disclaimer applies (and shred is thus of limited effectiveness) only in data=journal mode, which journals file data in addition to just metadata.

 __ _In both the data=ordered (default) and data=writeback modes, shred works as usual._ __

</comment></comment></comment><comment><USER20> Via `reiserfsck --rebuild-tree`, you can also do that for ReiserFS partitions. Have worked _very_ reliable for me. Only problem is that it doesn't always recover the filename and/or the directory structure (depending on how long it is ago that you have deleted it).

<comment><USER21> Just don't do this if you've at some stage backed up another reiserfs filesystem inside your reiserfs filesystem with 'dd'.

the rebuild tree trick mistakenly sees entries in the dd'd copy as being files in the parent file system, and then sprays them all over your drive.

<comment><USER22> Better than burying them off in the woods somewhere.

</comment></comment></comment><comment><USER23> One of my most mememorable cluster fucks was recovering a database using strings on the disk. The customer ran repair table and ended up with a very small table :) . It was tedious but felt awesome actually getting a large part of the data back.

</comment><comment><USER24> I've also used this technique. I even wrote a script with progress bar to do it, which is linked to at the end of:

<http://www.pixelbeat.org/docs/disk_grep.html>

</comment><comment><USER25> I used this method once...the file created gets pretty huge but you can even _manually_ sift through it for lost code if you know roughly where it ended up!

</comment><comment><USER26> Excellent Linux hack. I hadn't ever heard this before.

<comment><USER20> It works on all systems where you have raw access to the disk. And it isn't really that fancy if you think about how it works and how file systems work.

<comment><USER27> Yup, it's not very fancy, but in the end, serves its purpose and can really save your work.

the last part, about using an alias for rm is something that I've never thought about it and now I'm gonna use always on my servers.

</comment></comment></comment><comment><USER28> Actually, I think that the real great hack here is to alias the rm command to a trashbin script (as suggested at the end of the article)

<comment><USER29> The danger of aliasing the command itself (the bare 'rm') is that you come to count on the safety of the alias. Then you work one day on a friend's or coworker's machine and...BOOM.

What I do instead is make a nearby (and simple) alias. For example:

        rmi='rm -i'

</comment></comment><comment><USER30> frequent automatic backups and version control are your friend

</comment><comment><USER31> Clever stuff, thanks for sharing.</comment>


White House gets behind wireless broadband, wants 500MHz of spectrum reallocated - <AUTHOR> http://www.engadget.com/2010/06/28/white-house-throws-its-weight-behind-wireless-broadband-wants-5/

<comment> w-ll Im lucky enough to actually be working with this technology. I work for the man pushing whitespace in Wilmington, NC.

</comment><comment><USER2> It's concerning it took this long just to get a policy position established. We're probably still years away from seeing it actually happen. Seems like we should have dealt with this 10-20 years ago.

<comment> w-ll Until recently the 500 Mhz was tied up in Analog TV area. Now with digital TV we have extra wavelengths to use.</comment></comment>


Ask HN: How to register for Apple Developer Account without using personal name? - <AUTHOR> I would like to register for an Apple Developer Account without using my personal name, I understand that you can register as a Company and have that company get a DUNS number, but I am in the UK and registering a Limited company already exposes my name to the public records associated with that company.
I am not trying to hide from the law, only to make it harder to associate me with the apps I publish, as I do not want to be contacted directly by sales, or other people regarding my apps.
Thank you <comment><USER2> I don't believe you can. They will display the legal name of the individual or company. [https://developer.apple.com/support/enrollment/](https://developer.apple.com/support/enrollment/)

<comment><AUTHOR> I understand that, is it the same case in other countries that a Limited company share holder details are public like the UK? and do you recommend opening a company in another country?

Thanks

<comment><USER2> I'm sure there are many countries that are far less transparant than the UK. Anyway, for what you want to do, you might want to use one of those services that opens offshore shell companies and will obscure your identity. Look around online and I'm sure you'll find something.

<comment><AUTHOR> Thank you, I will look only to see if there is any European country that offers such service.

</comment></comment></comment></comment><comment><USER3> Your users have a right to know who created the software they are putting on their devices. Apple understands this and rightfully requires your personal information. I don't think work-arounds exist.

<comment><AUTHOR> I agree, I want the user to know the company making the applications not me as the developer that is my intention.</comment></comment>


Monads are a Class of Hard Drugs (2008) - paul-woolcock http://lambda-diode.com/programming/monads-are-a-class-of-hard-drugs <comment><AUTHOR> This article is flawed at its core: monads do not, in general, compromise type inference and they are _not_ all about sequencing state.

Sure, they are used for state and IO, but they can do far more, like nondeterministic programming, continuations or even nothing at all. Ultimately, I would say monads are about composition: they let you define exactly how to compose computations.

Additionally, monads do not break type inference. Having a type for every top- label binding is considered good style in Haskell, but it is still optional. I could see this practice being confused for type inference not working. There are of course language extensions that do break type inference in certain cases, and sometimes it is impossible even with the standard language, but it works almost all of the time even with monads.

Also, and this is probably just because this article is for years old, it really overstates hire bad Haskell performance is. In my experience, even naively written code runs relatively fast--certainly fast enough for me--in most cases. I believe this has really improved in recent times. Haskell is certainly better in this regard than most other high-level languages.

<comment><USER2> It's probably true that simply written Haskell code is fast enough for most uses. The trouble comes when that code isn't fast enough, or should be faster.

How do you make Haskell code faster? Apparently it's somewhat like writing fast Java code: avoid most features, use primitive data types, and write like you're writing C. Haskell code optimized for performance ends up like messy C code more often than not, except that unsafePerformIO isn't such a prickly topic in C.

Even Haskell professionals often don't know when "free" GHC optimizations will kick in, because the optimizations can be so picky, even after you remember to apply some forgotten language pragma. Writing performant Haskell is a black art.

<comment><USER3> Only one of the Haskell shootout programs uses `unsafePerformIO` now (n-body). While it looks to me like most of them make fairly heavy use of Foreign and thus low-level types, I don't think this automatically makes Haskell code like messy C code. After all, there still isn't pointer arithmetic, types don't magically transform into other types behind the scenes, and there's still a fair degree of non-strictness. More importantly (and contrary to C's "messiness") it's seldom difficult to take Haskell optimized with these low- level features and wrap it up in a nice high-level package for use from elsewhere. It's a curious and wonderful property of GHC that you can enable all the extensions you want on a module-by-module basis without creating a lot of cross-module drama. These are properties other languages should strive for.

Writing exceptional, highly performant Haskell is still a black art, sure. But writing performant Haskell is basically writing Haskell with a modicum of knowledge and respect (less lazy IO, more ByteString, more iteratees, etc). Writing highly performant Haskell is becoming easier and easier; the runtime system will give you detailed statistics about where your problems may lie, tools like ThreadScope can give you all the information you'd ever want, and many of the commonly-used libraries are heavily optimized for speed (Text, ByteString, iteratees, etc) which you benefit from basically for free.

It's not a panacea but I haven't ever had to use anything more sophisticated than strictness annotations, and even that I use pretty sparingly. Like the best black arts, it's very seldom necessary, and becoming more seldom every day.

As a side note, I would love to see an alternative "honest" shootout where programs must not do much overt "doping" (such as using Foreign and `unsafePerformIO`) because it would be interesting to compare the "native" speeds of different languages, with the kind of code the best normal people would write for themselves or their employer. Haskell has always abused its low-level facilities for higher placement in the shootout than it really deserves.

</comment></comment></comment><comment><USER4> Two glaring errors in here:

> The essence of monads is to use abstract types to enclose a mutable state > [...]

This is a common misconception, but terribly misleading. The "essence" of monads are the bind and return (or equivalent) functions, allowing decoupled transformations to be performed. The fact that you can write bind and return functions for a type that encapsulates the idea of a side effect is secondary.

Would you say "the essence of iterators is to encapsulate infinite sequences"? Infinite sequences happen to be iterable, but to say that they _are the essence of_ iterators is downright wrong. The essence of iterators is traveling through a collection item by item, as defined by the MoveNext/Current (or equivalent) functions.

> For one thing, when you use a monad, you get hooked to it: the type > constructors of the monad start to appear in the signatures of your > function.

If you have functions that should have nothing to do with a monad ending up coupled to it, then you're probably doing it wrong. Monadic methods let you "lift" functions, so they don't have to be coupled:

        // bad: unnecessarily coupling your function to a monad
        IEnumerable<int> Increment(IEnumerable<int> sequence) {
            var r = new List<int>();
            foreach (var e in sequence) r.Add(e + 1);
            return r;
        }
        ...
        var incrementedList = Increment(list);

        // good: using monad method to lift a non-coupled function
        int Increment(int b) { return b + 1; }
        var incrementedList = list.Map(Increment);

<comment><USER5> For the first point, I think the author is aware that you can do more than just mutable state using monads:

> But mutable state covers everything that is not pure computation and that > includes debug statements, input and output, system calls, network access, > getting the time of the day or even throwing an exception. So the monad you > are using has to provide all these services. Of course not every monad has > everything you need so you have the IO monad, the Maybe monad, the STM > monad, and so on. Whenever you have a C binding, you get a monad.

The second point example doesn't seem to address the author's concerns. The author is complaining about what happens when you try to compose N components that all disagree on the model of computation. OCaml has a more practical default model of computation so less such plumbing is needed.

</comment></comment><comment><USER6> Anyone who understands monads is on a class of hard drugs.

I'm still looking for someone who can present a cogent explanation of monads using only Python.

(I'm willing to replace "Python" in the above challenge with "any language I know well," which would include Python, C, C++, Java, JavaScript, and quite a few others which I won't bother to list here. Notably lacking from this list are Lisp, Scheme, Caml, Haskell, Prolog, Erlang, and most other languages whose view of the world is "weird." NB not that I'm against learning such languages; it's more a matter of available tutorials and time.)

<comment><USER7> What I wish someone had explained to me earlier was that Monads are an abstraction level up from most things you ever program with. Learn specific ones, and the general picture will start to make more sense. Avoid the IO monad until you understand, in order:

\+ the List monad (probably the easiest for python people, since it's very similar to list comprehensions)

\+ the Maybe monad (kind of a degenerate case)

\+ the State monad

And it's much easier if you do it in Haskell, trust me. "Learn You A Haskell For Great Good" is a nice easy intro to the basics.

<comment><USER8> >\+ the Maybe monad (kind of a degenerate case)

Hey. Hey. heyyyyy.

I've used bind + maybe monad 'ish stuff in Python to clean up code previously littered with redundant if checks.

<comment><AUTHOR> He probably means its a degenerate case of the list monad. Which is a useful way to look at it: a Maybe value is like a list of length at most 1.

You can also look at it as a degenerate case of Either. (That is, Maybe a ~ Either () a.)

This is "degenerate" in the mathematical sense, much the same way you can think of a point as a degenerate circle.

</comment></comment></comment></comment><comment><USER9> _For one thing, when you use a monad, you get hooked to it: the type constructors of the monad start to appear in the signatures of your function._

Yup, that's the point![1]

[1] Or rather, one of _many_ points.

<comment><USER10> I used to feel this way too, so I'm not trying to be coy, but really that's a property of a (some) Functor(s), not a Monad (except in that all Monads are also Functors).

Monad is just the pattern where you combine Functors. Some Functors can be pattern matched upon to "escape" their values. Functors like IO cannot. IO would still be (academically) useful if not for its Monad instance... you'd just only be allowed a single effect in the entire program!</comment></comment>


Hey Entrepreneurs, Bootstrapping Is An Option, Too - <AUTHOR> http://millipede.us/hey-entrepreneurs-bootstrapping-is-an-option-too/

<comment><USER2> Except that if you're already working for a tech company you have likely signed an NDA/Intellectual Property Assignment agreement when you started your job -- thus muddying the waters from a legal/IP point-of-view for any work you've done (even outside of your work hours).

* Except in CA as the state outlaws these kinds of shenanigans, and rightly so!

<comment><USER3> Just keep your mouth shut about what you do in your own time and you'll be find.</comment></comment>


Blood donors in Sweden get a text message when their blood saves someone's life - <AUTHOR> http://www.independent.co.uk/news/world/europe/blood-donors-in-sweden-get-a-text-message-whenever-someone-is-helped-with-their-blood-10310101.html <comment><USER2> This could work not just for donating blood, but for pretty much any kind of service.

Imagine if you could see, in real time, how your job affects other people's lives, even in the most mundane way. It would let you see the value of what you do, and give you a reason to do it better.

<comment><USER3> I always thought about this about taxes.

If you could choose from a list of projects a la Kickstarter where YOU choose where your taxes go to, I'm sure people would not only feel better about taxes in general but would allow them to get involved in said projects.

<comment><USER4> The problem with this approach is the areas of need rarely aligns with areas of desire. What happens to those areas that need resources that nobody really cares about?

<comment><USER5> > What happens to those areas that need resources that nobody really cares > about?

This is why taxes cannot be donations. Indeed, they are not donations.

I remember the people at institutional giving at my old college say that nobody wants their name on a parking lot.

<comment><USER6> I'd much rather have my name on a parking lot than on a landmine.

<comment><USER7> America has pledged not to use anti-personnel landmines(APL) anywhere outside of the Korean peninsula. I suspect (although obviously can't confirm) America has reserved this right but probably does not exercise it.

> The United States is the world's single largest financial supporter of > humanitarian mine action, which includes not only clearance of landmines, > but also medical rehabilitation and vocational training for those injured by > landmines and other explosive remnants of war. Since the United States > Humanitarian Mine Action Program was established in 1993, the United States > has provided over $2.3 billion in aid in over 90 countries for conventional > weapons destruction programs.[0]

While I am quite cynical and definitively against a lot of the ways our military has been employed, the degree of safety and the diplomatic security I receive as a result of it, provides more utility to me than a parking lot.

More broadly, roads and localized infrastructure are quite important, as is the military. I agree that personally I would allocate more money for infrastructure than to the military, and agree if this is the point you were making. I do want to illustrate the counterpoints that many people (once again, not me personally) would "Rather have their names on the bombs that kill terrorists"[1], than on a highway.

[0] [http://www.state.gov/t/pm/wra/c11735.htm](http://www.state.gov/t/pm/wra/c11735.htm)

[1] This is a dramatic characterization and hyperbole. However, I do suspect a large swathe of the country believes this.

<comment><USER6> I don't live in America. And my country makes all kinds of crap. Clusterbombs and what not. The landmine was meant as an illustration, not as a particular item, it could just as well have been a clusterbomb or some other intrinsically negative item.

<comment><USER7> Sorry, that was a pretty ethnocentric assumption on my part. A case could be made that landmines are intrinsically negative as they are non-discriminating hazards that render large portions of land unsafe well after a conflict has ended. Bombs, missiles tanks etc, I am not so sure of. I would appraise them as neutral, with the potential to be negative or positive.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> The Gamification of saving lives! f __k yeah! - "I AM LEVEL 3, yesssssss." (3-lives saved)

<comment><USER9> Many places already do that... counting the number of times a person has donated (not actually used) and giving them some status accordingly.

<comment><USER10> Except we now live in the Internet age...where nothing happens unless you can post it on Twitter or Facebook.

<comment><USER8> Maybe they should post it on Twitter too - "@JoezyDeco just saved the life of a premature infant." (Graphic of a God Mode badge.) ;-)

</comment></comment></comment></comment><comment><USER11> What a genius idea to raise awareness. This seems like a no-brainer for blood banks, hospitals, public health and so on.

<comment><USER6> I think it's a terrible idea. That reverse track from specific use of blood to phone number of the source should not even exist.

<comment><USER12> That probably must exist to track potential problem with donor's blood in case it wasn't spotted

And also, people generally like being appreciated personally. I'd imagine that named donations prevail over anonymous in most cases.

<comment><USER13> Exactly. The fact Sweden can do this is a comfort: it speaks to amazing inventory management.

</comment></comment></comment></comment><comment><USER14> This also recently started happening in Australia, I got a text message 3 weeks ago saying my blood was used in Liverpool hospital. It was pretty fun knowing where it helped someone.

</comment><comment><USER15> Life hacks. On a date in Sweden? Arrange your buddy to send you a text message saying you just saved someone's life. Watch jealousy turn to desire when you get a text message (another girl??), and say, "Oh - I just saved someone's life. See?"

I'm just kidding. My real point is that a mailed letter (or email) sounds more appropriate than a text message. But then again maybe not!

<comment><USER16> Wouldn't work in the US, I find that the social value of having saved someone's life is somewhere between zero and negative, unless that someone belongs to your interlocutor's subculture.

You tell an investor in SF, in passing, "I talked a junkie off the bridge and took her away before the cops showed up, and let her stay at my place for six months until she cleaned up", and they'll think you are mad, not honorable.

(Not a true story; composite of three separate incidents)

<comment><USER17> >"I talked a junkie off the bridge and took her away before the cops showed up, and let her stay at my place for six months until she cleaned up"

It's reassuring to know I'm not the only one who got an ex-girlfriend this way.

<comment><USER16> Nah, I have a guest room with its own door. Don't stick your dip in crazy, and all that.

</comment></comment></comment></comment><comment><USER18> I wish I was allowed to donate blood. This is a great idea, I hope other countries adopt it.

<comment><USER19> Why aren't you allowed ?

<comment><USER20> In different countries, there are various reasons, some better than others. Chronic illnesses like hepatitis, having had gay sex, having lived in Britain in 1980's. These contribute some risk to donating blood.

<comment><USER21> Also having malaria, paying money or sex for drugs, lived in Africa for 6 months, ever had a blood transfusion, dura matter transplant... the list goes on. In Canada, every time you donate you answer about 13 questions on your own, then a nurse asks you about 10 "high risk" questions. You can tell they could recite them in their sleep, and I'm almost at the point where I could as well.

</comment></comment></comment></comment><comment><USER22> It makes me sad to see people who donate or contribute to charity for popularity. The idea behind giving blood--or other community services--is to help society as a hole, not your ego. Charity should not be flashed like a status symbol.

If a charity is wasting time and money developing systems to stroke your ego, they should just skip the step and sell themselves to Fleshlight. Their time and money should be spent on improving the lives of those in need, not by stroking off some people.

<comment><USER23> This is a simple and cheap method to get more people to male the altruistic[1] step of donating blood.

It's not much fun; it's sort of awkward for some people; we could probably do woth more people donating blood.

The blood banks have a choice: spend money on tv ads, or spend money doing this. Why are ads okay and this terrible?

[1] I'm not interested in philosophy of altruism.

<comment><USER22> Who said ads are okay? Wasting money that you promise to put towards a goal on something else is, in my mind, wrong.

People already know donating blood is a good and charitable act. We don't need someone to tell us that.

<comment><USER23> How are they supposed to get more people to donate blood?

</comment></comment></comment></comment><comment><USER24> Might work for some people but not for me. I'd start worrying I'm not donating enough. With plasma you can donate every two weeks which is pretty often, I only go once every four weeks. However I liked the chocolates that were handed out at the blood bank around Christmas time last year (Australia). Oh and in case your wondering they used to offer beer in refreshment but that was cut out a couple of years ago. But they do have wifi now :-).

<comment><USER25> Interesting. In the US you can donate plasma twice a calendar week as long 48 hours separates the donations.

I use to do red blood and double red as frequently as a I could, the day I became eligible again was the day I donated. When you do something like that you can't worry if you are donating enough - you know that you are doing everything you are allowed to do.

<comment><USER26> My friend, you may be suffering from ALAS.

[http://www.davidbrin.com/givingplague.html](http://www.davidbrin.com/givingplague.html)

</comment></comment></comment><comment><USER6> So, how long until someone figures out that they don't actually need to save someone's life to send a text message? And what about using the blood when someone's life is not saved, does that not warrant a text message?

How come the entities using the blood and/or distributing it have access to the phone numbers of the donors?

<comment><USER27> You try turning up at ha hospital with a bag of blood and saying "here's some blood, but I won't say who it's from".

<comment><USER6> I'd hope that would get you arrested in short order and held until you come up with a very good and verifiable explanation about where the blood came from.

Who donated the blood is important at the point of capture, where you want to analyse the blood and make sure that neither the plasma nor the cells carry anything other than benefits to the eventual recipient.

But who exactly sourced the blood should be of no concern to the agency that ends up using it, and _if_ there is a problem the only thing they should have to go back on should be an un-identifiable serial number that they can use to report back to the collection agency to make sure they destroy the rest of the blood from that lot and mark that particular donor as un-acceptable.

What should happen beyond that is up to the local legislation, presumably the donor should be warned and the screening process should be improved so a similar thing will _never_ happen again, if a problem with blood products is only discovered at the time of use then that's a process failure much more than a problem with that blood.

<comment><USER28> This may well be what happens. The hospital informs the agency that they've used SN547825482 and that agencies database triggers a text message.

</comment></comment></comment></comment><comment><USER29> In fact, here in Turkey, a similar service is in use for several years now.

</comment><comment><USER30> Turkish Red Crescent does that too. It works.

</comment><comment><USER31> My friend Regan Gill once worked for the Seattle blood bank. She said business was always hopping after the bars closed, espcially on friday and saturday nights.

On time a bag of blood broke open while she was carrying a case of blood down a long hallway. It looked just like she'd dragged a stiff down the hall.

</comment><comment><USER32> Hasn't the gamification and the application of Pavlovian behavior online gone already too far?

I mean this trend of employing FB notifications like Dopamine/Serotonin rewarding systems is getting out of hand and we need to address it properly.

<comment><USER33> You just received the Great Point Achievement. Congratulations. Share with your friends <url here>. View their achievements and badges here.

</comment></comment><comment><USER34> Blood donation is not very efficient charity and the service is homophobic and (in the US) nationalistic (no the entirety of Europe doesn't have mad cow disease). Instead of sending these feel good SMS messages they should work on solving those two issues.

<comment><USER35> So what do you think Sweden should do about the nationalism of the US' blood donation system?

</comment></comment><comment><USER36> Am I the only one who thinks donating blood is a bad idea based on personality of the donor? I know that this article refers to organ transplant, but I also have read articles talking about how blood donations can affect personality:

[http://www.medicaldaily.com/can-organ-transplant-change- reci...](http://www.medicaldaily.com/can-organ-transplant-change-recipients- personality-cell-memory-theory-affirms-yes-247498)</comment>


Open Source Replication and Offline Sync for Node.js and Devices - <AUTHOR> http://strongloop.com/strongblog/node-js-replication-mobile-offline-sync-loopback/

<comment><USER2> This is really great! I was looking for this functionality as I was interested in the Meteor framework for this reason. It's good to see it implemented here!

</comment><comment><USER3> Does this work using localStorage? What about PouchDB?

<comment><AUTHOR> loopback.createDataSource({localStorage: 'mydb', connector: loopback.Memory});

...will allow you to read/write/replicate/etc models with the browser's localStorage.

LoopBack replication/sync is similar to PouchDB. The important distinction is that loopback can sync with any connector that supports the basic crud methods:

[http://docs.strongloop.com/display/DOC/Data+sources+and+conn...](http://docs.strongloop.com/display/DOC/Data+sources+and+connectors#Datasourcesandconnectors- Connectors)</comment></comment>


British cubesat 'fully controlled by a Google Nexus during orbit' next month - <AUTHOR> http://www.bbc.co.uk/news/science-environment-21361204

<comment><AUTHOR> Apparently its going up untouched - a test of the quality of consumer electronics and presumably a nod to the expense of building useful hardware from scratch.

PS Had to mangle the first sentence a bit to fit in 80 chars.</comment>


Microsoft, the Chairman of the Board of Firm Behind Heartbleed - <AUTHOR> http://techrights.org/2014/04/08/howard-schmidt-codenomicon/

<comment><USER2> Flagged. Boycott Novell is not a reliable source for anything. They think pretty much everything is a Microsoft conspiracy or a Bill Gates conspiracy. Here are some of their claims. Bill Gates controls PBS, the BBC, and most major newspapers. Also the medical journal The Lancet. Gates' work in Africa is part of a plan to commit genocide there to clear the way for Western recolonization. "Teach for America" is a secret Gates front out to destroy the teaching profession, presumably to clear the way for Gates (who they identify as the de facto Minister of Education in the US due to his control over the Obama administration) to take over the schools.

</comment><comment><USER3> Roy is pretty intense in his articles, he still acts like it's 10 years ago any Microsoft is to be feared.

<comment><USER4> Microsoft is still a powerful entity. Considering how irresponsibly this vulnerability was disclosed, I would not completely discard the relationship.

I am not downplaying Heartbleed's severity: everyone, everywhere, should change every passwords they care about used in the last couple years and this is the kind of recommendation you want to be spread far and wide, but spreading it before major distros have had a chance to offer patches caused a lot more trouble than it should have caused.

</comment></comment><comment><USER5> Sounds like a pretty wild conspiracy theory.</comment>


The Startup Project is for Sale - <AUTHOR> http://www.startupproject.org/2011/04/startup-project-sale/

<comment><AUTHOR> I'd love to have some bids from HN readers in particular!</comment>


R-Core dev switches to Julia, and the pain of CRAN - <AUTHOR> https://stat.ethz.ch/pipermail/r-sig-mixed-models/attachments/20131209/ec911711/attachment.pl

<comment><USER2> This text is sort of out of context. Do you have a link with surrounding emails?

To provide a little more context from what I know myself, Doug Bates is a long-time R contributor and package maintainer, but started switching to Julia for the reasons he gives here, among others, in mid 2012. He's a great hacker, not to mention brilliant statistician, and we're extremely lucky to have him in the Julia community.

<comment><USER3> The thread seems to have gotten a bit mangled on the mailserver. Here's the full thread: [https://mailman.stat.ethz.ch/pipermail/r-sig-mixed- models/20...](https://mailman.stat.ethz.ch/pipermail/r-sig-mixed- models/2013q4/thread.html)

<comment><USER2> Thanks, that was exactly what I was looking for!

</comment></comment></comment><comment><AUTHOR> Hadley Wickham has responded as well, text below:

"> Maintaining an Rcpp-based package on CRAN these days is a case of "no good deed shall go unpunished" and "the flogging will continue until morale improves". I am the maintainer of the RcppEigen package which apparently also makes me the maintainer of an Eigen port to Solaris. When compilers on Solaris report errors in code from Eigen I am supposed to fix them. This is difficult in that I don't have access to any computers running Solaris, which is a proprietary operating system as far as I can tell, and Eigen is a complex code base using what is called "template meta-programming" in C++. Making modifications to such code can be difficult. I can't claim to fully understand all the details in Eigen and in Rcpp. I am a user of these code bases, not a developer. The Eigen authors themselves don't test their code under Solaris because they don't have access to Solaris systems either and they don't regard Solaris as an important platform for numerical computing. The CRAN maintainers feel differently, which puts me in a box.

It's not just packages that use Rcpp that suffer from this problem. lubridate, which has extensive user tests, often fails on solaris because it does something different to every other platform. While this has uncovered a number of bugs and limitations in R's datetime support, the only feedback we get from CRAN is extremely negative.

For lubridate, in the absence of any help from a solaris expert (and no evidence that anyone on solaris uses lubridate), we have simply told CRAN that it does not work on solaris. We continue to argue that the CRAN policies only require that an R package need only work on two major platforms to be distributed via CRAN, and while the CRAN maintainers continue to push back at us, they are bound by their own words.

(While a somewhat biased sample, we see very few solaris downloads from the Rstudio cran mirror: since Jan 1, there were 845 packages downloaded from solaris, 0.003% of the total)

> There are days when I am tempted to say, "okay, if RcppEigen is not suitable > for CRAN then remove it" which would result in removal of all the packages > that depend on it, including lme4. That may seem childish of me but I really > don't know what else to do.

I have been tempted to do this too, and for RcppEigen more than an empty threat. Currently the complete reverse dependencies (Depends, Imports, LinkingTo and Suggests) of RcppEigen includes 3626 packages, almost three- quarters of CRAN. It would certainly create more work for CRAN can allowing RcppEigen to fail on Solaris.

> So I have reached the point of saying "goodbye" to R, Rcpp and lme4 and > switching all of my development effort to Julia. I'm sorry but others are > going to need to determine how to maintain lme4 to the satisfaction of the > CRAN maintainers or whether there should be an alternative distribution > mechanism for R packages.

This is a great loss for the R community. nlme was one of the first R packages that I used, and I still remember taking a SAS-based mixed models course, while reading "Mixed-Effects Models in S and S-PLUS" and doing all the homework in R. I certainly learned much more about mixed models and data analysis from you and your book than I did from that class! Your patient and thoughtful responses to questions about R and statistics have helped me become a better statistician, and have helped many others solve their real scientific problems.

While I hope that one day we can lure you back to R with better ways of distributing packages, I wish you all the best in making great modelling software for julia. The julia community is truly lucky to have you!

Hadley"

<comment><USER4> I have had the pleasure of working with Doug on Julia in the last couple of years, and I fully agree that we are extremely fortunate to have Doug working on Julia. I have heard the sentiment you express from friends of mine too - they all talk about having learnt their R and statistics from Doug, through all his contributions on the mailing lists, software, documentation, email exchanges, etc.</comment></comment>


Inside Facebook's Election 'War Room' - <AUTHOR> https://www.nytimes.com/2018/09/19/technology/facebook-election-war-room.html <comment><USER2> If Facebook cares so much about influencing elections and interfering in democracy, why do they do it themselves?

[https://www.opensecrets.org/news/2018/04/fbook-lobbyists- gav...](https://www.opensecrets.org/news/2018/04/fbook-lobbyists- gave-600k-zuckerbergs-congressional/)

<comment><USER3> That's FB using the official election-influencing methods. The controversy here is about the government being upset that people are influencing the elections outside the approved channels.

</comment></comment><comment><USER4> > the War Room will house a team of about 20 focused on rooting out > disinformation

Something tells me that they aren't putting much effort into this. Hopefully it's because FB knows that a war on lying is about as winnable as a war on drugs.

<comment><USER5> Indeed, fighting the "Firehose of Falsehood" propaganda model is quite challenging:

[https://www.rand.org/pubs/perspectives/PE198.html](https://www.rand.org/pubs/perspectives/PE198.html)

> Since its 2008 incursion into Georgia (if not before), there has been a > remarkable evolution in Russia's approach to propaganda. The country has > effectively employed new dissemination channels and messages in support of > its 2014 annexation of the Crimean peninsula, its ongoing involvement in the > conflicts in Ukraine and Syria, and its antagonism of NATO allies. The > Russian propaganda model is high-volume and multichannel, and it > disseminates messages without regard for the truth. It is also rapid, > continuous, and repetitive, and it lacks commitment to consistency. Although > these techniques would seem to run counter to the received wisdom for > successful information campaigns, research in psychology supports many of > the most successful aspects of the model. Furthermore, the very factors that > make the firehose of falsehood effective also make it difficult to counter. > Traditional counterpropaganda approaches will likely be inadequate in this > context. More effective solutions can be found in the same psychology > literature that explains the surprising success of the Russian propaganda > model and its messages.

</comment></comment><comment><USER6> Pretty chilling that 'private' companies like this are able to set up such operations that could easily sway federal election results without providing any transparency or having many regulations to follow.

<comment><USER7> Like a newspaper, magazine, or TV station?

<comment><USER8> That's a false equivalence. Facebook has an inordinate amount of power over person-to-person communication. TV and print media is not even in the same ballpark of influence.

<comment><USER9> Conglomerated media companies like Sinclair are in the ballpark, but true independent media outlets don't, for sure.

And it's not false equivalence in my mind, just worth noting the difference in magnitude and considering the difference that might make.

<comment><USER10> False equivalence definition: "A common way for this fallacy to be perpetuated is one shared trait between two subjects is assumed to show equivalence, especially in order of magnitude, when equivalence is not necessarily the logical result." \- [https://en.wikipedia.org/wiki/False_equivalence](https://en.wikipedia.org/wiki/False_equivalence)

It is hard to see the equivalence between a traditional media company such as Sinclair that produce content for distribution and a social _platform_ for individuals to share their thoughts such as Facebook.

When we are talking about potential effects on personal communication it does not make sense to compare the magnitude between a traditional mass media platform product and a social media platform, because the latter focus is entirely on personal communication and the former is a mass media company.

</comment></comment></comment></comment></comment><comment><USER11> How is this legal? Don't they need to register was a political action campaign? What the hell? They must at a minimum describe and disclose their methods, procedures, determination factors, cash flow/conflicts of interest and some kind of transparent audit log. Who determines "fake news" \-- a subjective term. The whole premise is that they don't believe people can determine that for themselve and must be "managed". What a travesty of our democracy. Big tech big brother.

</comment><comment><USER12> Social media is just one 'propaganda center' to be concerned with.

Hollywood is a notorious mouthpiece for politics. (They are also very heavy- handed in controlling the message through use of carrot-and-stick.)

Big media is of course totally lopsided, one way or the other. Fox is as bad as CNN is as bad as MSNBC. Take your pick.

For my tastes, the best way to get a central view is to look at a site like 'Real Clear Politics', which shows the most outrageous headlines from both sides of the aisle. The reader is left to triangulate a position, after having seen the most persuasive arguments from both sides of the aisle.

</comment><comment><USER13> > ... biggest companywide reorientation since our shift from desktops to > mobile phones...

Putting 20 people behind it?

<comment><USER14> Tech companies are like glaciers, 20 people at the tip of this project will be leveraging all of FB's internal tooling and might be able to get more done.

Also, it would be difficult and maybe a waste of effort to try to scale a team faster than that, with midterms so close. For sure they can increase headcount if it's successful.

<comment><USER15> You're joking right? FB has over 25 _thousand_ employees and you think 20 people is a significant reorientation effort? Or that a team any larger would have problems a scaling?

<comment><USER16> Then put 100 people in the room? 1000? Not sure what's the point of having everyone in the single room, when the entire company is in the single company anyway.</comment></comment></comment></comment>