Money stolen by Bernie Madoff is still being found - <AUTHOR> https://www.economist.com/news/business-and-finance/21737446-almost-decade-after-ponzi-scheme-collapsed-trustees-are-still-returning <comment><USER2> I'm surprised at the recovery rate. $11.5 billion out of $25-$30 billion (But principle). There's another $5 billion+ sitting around. There was definitely enough money for this have gone on for decades longer.

Lawyer fees have exceeded $1 billion so far, which I suppose is reasonable given the money returned.

<comment><USER3> Read to the end. They're suing people who took their money out, reclaiming it into the bankruptcy trust, and disbursing it (even though these people didn't break any laws). The fund didn't actually have all of the money that they're confiscating for disbursement.

<comment><USER4> If somebody robbed a bank and gave you the money, there would be an expectation that you would have to return that money, 'possession of stolen property' and all that. The fact that the money was given in the form of investment returns doesn't change that.

I think we can all agree that each investor should get their principal investment back. I don't think there's a good argument for letting people keep the _impossibly high_ returns on that principal.

<comment><USER5> And if you sold a car to that bank robber without knowing it was a robber you would have to reverse the transaction?

<comment><USER6> First, Picard (the trustee) can only clawback transactions for six years per NY law. Second, from [https://en.wikipedia.org/wiki/Recovery_of_funds_from_the_Mad...](https://en.wikipedia.org/wiki/Recovery_of_funds_from_the_Madoff_investment_scandal) he seems to have primarily gone after people who knew, or should have known, that Madoff was doing something fraudulent. eg, from the article,

> _On May 7, 2009, Madoff Bankruptcy Trustee, Irving Picard filed a lawsuit > [38] against J. Ezra Merkin, seeking to recover almost $500 million > withdrawn from Madoff accounts in the last six years. The complaint alleges > that since 1995, Merkin steered more than $1 billion to Madoff through three > private hedge funds, Ascot Partners, Ariel Fund, and Gabriel Capital. Since > 2002, the funds withdrew at least $494 million from Madoff — returns that > Merkin "knew or should have known" were fraudulent. There were at least 500 > instances in the last ten years when his Madoff account statements showed > large blocks of stock bought or sold at prices that did not match the > stock's trading range for the day when the transactions supposedly > occurred._

<comment><USER7> Or he didn't look closely enough into what was happening. He might not have been very capable, just lucky. "Should have known" is not an answer to (potential) incompetence or stupidity.

Given his funds went bankrupt, he probably did not know.

<comment><USER6> The law seems to take a dim view of sophisticated investors who pretty clearly could have trivially found something fishy and instead chose not to look. Deliberate ignorance apparently gets clawbacks.

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> I mean if you haven't seen it yet, Wizard of Lies on HBO is a Soprano's-level of quality depiction of the whole Madoff thing.

<comment><USER9> In addition to film, I highly recommend the book published by the whistleblower Harry Markopolos, "No One Would Listen".[0]

He spent the better part of a decade trying to alert the SEC to what he found. It was certainly a risky endeavour given how much money was at stake.

[0] [https://duckduckgo.com/?q=harry+markopolos+no+one+would+list...](https://duckduckgo.com/?q=harry+markopolos+no+one+would+listen&ia=products)

</comment></comment><comment><USER10> Irony of a dead system.

MADOFF: Rich man looses money of old timey rich people, government scrambles to find and repair.

MTGOX: e-BTC collude with hackers to hack MTGOX, FBI takes down e-BTC, FBI keeps money.

<comment><USER11> It was BTC-E and you are missing some important information. Btc-e collusion not yet proved, FBI still keep the money, BTC-E remain in business and arrange to refund users at their own expense. So the analogy would require the government to take Madoffs money while claiming he was defrauding users and Madoff continuing his scheme and returning to them the money the government had taken from him/them.

<comment><USER10> You are right, my comparison is absurd. bTCe work to return funds to their customers though, not those of mtgox. Nor should they need to, if indeed the accusation they colluded with MTGox hackers is false

</comment></comment></comment><comment><USER5> Are the paying people for lost returns? One one side these returns were fictitious, but on the other if you invested $100 in the 70s, should your claim in 2018 be only $100?

<comment><USER12> People will be lucky to get cents on the dollar. Lost returns isn't even in the ballpark.

<comment><USER5> There still needs to be a way to allocate the recoveries. If investor A invested $100 in 1970 and investor B invested $100 in 2006 do they both get the same recovery?

<comment><USER6> Unfortunately, they do. The conclusion was that, because for quite a period there were no investments, just a scam, that the law says money-in, money-out.

In particular:

> _The accounting of "funds stolen" in this matter excludes inflation, > interest, time invested, opportunity cost, and falsely reported balances. > The interpretation of the laws do not consider time value of money when > reimbursing lost funds._

see [https://en.wikipedia.org/wiki/Recovery_of_funds_from_the_Mad...](https://en.wikipedia.org/wiki/Recovery_of_funds_from_the_Madoff_investment_scandal)

<comment><USER13> The key quote from that article:

> _"...no legitimate investments were made on the investors' behalf for at > least the last 12 years..."_

It's unfortunate for the people who _thought_ they were earning interest, but it wasn't earned; it was money stolen from other investors.

<comment><USER6> It is worth noting, however, that apparently you can only clawback disbursements for the previous six years, so someone who invested in the 70s most likely did quite well via withdrawals.

</comment></comment></comment></comment></comment></comment><comment><USER14> Paywall. Non paywall link?

<comment><USER15> open in incognito mode</comment></comment>


LinkedIn is down - <AUTHOR> http://www.linkedin.com/

<comment><USER2> Via @linkedin on Twitter- "Hey guys, this is part of the planned cutover we initiated oer the wknd. <http://bit.ly/fYD800> Sorry for the inconvenience. Stay tuned."

"We continue to tune our site and optimize site performance following our recent cutover to the new Los Angeles data center. Thanks for your patience during the transition. Stay tuned. – Dec 13, 2010"

<http://blog.linkedin.com/2010/12/11/linkedin-data-center-la/>

</comment><comment><USER3> It doesn't seem very down to me...</comment>


Ask HN: Best way to set up an anonymous blog? - <AUTHOR> If possible. <comment><USER2> There are tons of web apps out there that allow you to post and give you the URL all without signing up for an account or identifying yourself.

I created [https://mypost.io](https://mypost.io) as a way for people to get things up on the Internet in seconds without registering for an account or even identifying your email. It does not log your IP address or require any personally identifying information about you. Easy to use as a regular blog. Easy to use with HTML and CSS added so you can customize the way it looks. Even allows for you to remove all the default CSS and add your own.

<comment><AUTHOR> Kudos. Can I have a named blog or similar?

<comment><USER2> You could do something like I did. Here is the MyPost blog: [https://mypost.io/post/blog](https://mypost.io/post/blog)

It is a series of posts and I connect them all together via URL so it looks like one blog, but really, its just a bunch of separate posts.

You could do something similar.

You can style them to however you want it all to look so they can look like completely separate posts or all take on a unique look, as if they are part of a single blog.

The thing that makes MyPost unique, and there are certainly other creation platforms out there that allow it too, is the fact that you can have your own unique URL.

So you could do something like:

b01t-blog-post1 b01t-blog-post2 b01t-blog-post3

And so on.

URLs on MyPost are a first-come first-serve basis, and once you claim a URL, unless you choose to delete it, its unavailable to anyone else but you.

It also is not really public until you choose to share it on your social media or set in the Advanced Options that you want to display it on the MyPost display (at which point-Googlebot would do its thing). ([https://mypost.io/display](https://mypost.io/display))

Go crazy with it if you decide MyPost is for you. It is free to use. I don't have any plans to charge for it in the future. Posts are private until you decide you want to share them with your following.

It was my first project where I was experimenting with PHP, database, and user input. I still update it from time to time, but it mostly functions properly as it should.

</comment></comment></comment><comment><USER3> [http://telegra.ph](http://telegra.ph)

Made by the security-conscious folks who also built Telegram Messenger

<comment><USER4> So conscious that they've even forgot to configure SSL/TLS certificate.</comment></comment>


Good sleep, good learning, good life (2012) - <AUTHOR> https://www.supermemo.com/en/articles/sleep <comment><USER4> > "We don't get enough sleep, and we are not going to "change our ways" > because there are already too few hours in most people's days to do things > they enjoy. Call it a sad fact of life because that's what it is"

This honestly is spot on the way I think about it - I can sleep early, but who benefits from my day to day learning as an adult? My employer maybe? Me in some minor long term ways?

Or I can stay up and do things I enjoy, wake myself up with an alarm every day and consume enough caffeine to bridge the gap. This way, I get more enjoyment out of my life in a very direct and measurable way.

If 5-6 hours of sleep a night is enough to get paid, I'm not going to make a sacrifice that will cost me personally.

<comment><USER5> Someone else already recommended "Why We Sleep" by the premier sleep researcher in the field, and I highly suggest you get it. Here is a passage from it that should make you rethink the entire rationale you are using to shortchange yourself of sleep:

"Routinely sleeping less than six or seven hours a night demolishes your immune system, more than doubling your risk of cancer. Insufficient sleep is a key lifestyle factor determining whether or not you will develop Alzheimer's disease. Inadequate sleep—even moderate reductions for just one week—disrupts blood sugar levels so profoundly that you would be classified as pre-diabetic. Short sleeping increases the likelihood of your coronary arteries becoming blocked and brittle, setting you on a path toward cardiovascular disease, stroke, and congestive heart failure. Fitting Charlotte Brontë's prophetic wisdom that "a ruffled mind makes a restless pillow," sleep disruption further contributes to all major psychiatric conditions, including depression, anxiety, and suicidality."

<comment><USER6> Remember that the author is financially incentivised to make claims about large effect sizes of sleep deprivation, and to infer causality where it may or may not exist.

<comment><USER7> There is being skeptical and then there is baseless, conspiratorial cynicism -- the kind that usually makes you hurt yourself.

<comment><USER8> And there's shaming people for having a different opinion than the majority.

<comment><USER7> Opinions do not gain credence just because you hold them and they do not gain credence or viability just because they're contrarian. No one is shaming it by the fact that it's a minority opinion, it's just a baseless silly opinion to have.

Don't be disingenuous.

<comment><USER8> > it's just a baseless silly opinion to have.

Sounds like shaming to me.

<comment><USER7> No it doesn't, and it's still wouldn't be shaming for the reason you outlined. Your entire statement is pointless if you have to crawl all the way back to a single verb to make it relevant.

<comment><USER8> You sound mad.

<comment><USER7> Well hopefully that hasn't affected you too much.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> If you get a 403 error (as I do), here's the latest web archive capture: [https://web.archive.org/web/20181017190008/https://www.super...](https://web.archive.org/web/20181017190008/https://www.supermemo.com/en/articles/sleep)

<comment><USER10> Thank you. I really should donate to the Web Archive because it's just such a useful resource.

<comment><USER11> An easy way to contribute a small amount is through Amazon Smile (0.5% of your Amazon purchases):

[https://smile.amazon.com/gp/chpf/homepage/ref=smi_se_scyc_sr...](https://smile.amazon.com/gp/chpf/homepage/ref=smi_se_scyc_srch_stsr?q=internet+archive)

<comment><USER10> I didn't even know that existed. Cool. Thanks for the heads up.

</comment></comment></comment></comment><comment><USER12> I'm lucky enough that I haven't cut on my sleep much during my adolescence or my college studies. Today I feel awful every time I sleep less than 7 hours, and moderately dysfunctional if I don't sleep 8 a few days in a row.

By "awful" I mean that I just think slower. It's like playing a game with lag, not fun. I wonder if/how many people who claim they can sleep 6 hours a day and feel fine have just gotten so used to the lag that they don't notice it anymore.

Only thing I'm afraid of is children...

<comment><USER13> I have a different journey with the exact same results.

In my adolescence/college studies, I thought fast, and slept little. I could stay up all night with friends then go to class the next morning. I spent the first 5/6 years of my career being a top performer on 4 hours every weekday, and catching up on 8-10 hours of sleep over each weekend night.

Then, 3 things happened almost at the same time:

1) I got a much tougher job that challenged me like I never had before (FAANG)

2) I turned 30

3) I lost the ability to sleep in on the weekends. I wake up at 8am now every day regardless of what time I go to bed.

Until #3, I got by with coffee and still using weekends for recovery - <USER2> more coffee. #3 ruined it.

I still got by - and was even successful.

Then,

#4) I got promoted.

Now the challenges are out of this world, and I can't sustain my lifestyle any more. I'm struggling to adjust to going to bed early because my brain and all my instincts are still in the mode of "Nighttime is for creativity and fun! We can sleep when we're dead!"

But it's starting to affect my work, which in turn is stressing me out, because I really love my job and I want to excel at it. The effects are just as you describe - lag. I'm slow. I'm not as smart as I used to be.

So...gradually...i'm learning to force myself to sleep. I welcome tips. :S

<comment><USER14> I have struggled with falling asleep a lot. This has been helpful recently: 1\. 2-3 hours before bed, put away all electronics (including phone and TV/netflix) 2\. Read a _real_ book for 1-2 hours 3\. If I can't fall asleep, I put on Dan Carlin's Hardcore History Podcast with a sleep timer of 10 minutes. I usually get absorbed into his story telling and it helps take my mind of things. 4\. No alchohol during the week 5\. No caffeine after ~1pm; and only 1 coffee when I arrive at work

Admittedly, my week is a little boring this way and I still haven't worked up to doing it consistently, but it's been much more effective than anything else.

<comment><USER15> Reading (and thus avoiding the TV and my phone) before going to sleep has done wonders to me. I can recommend this so much. I'm sleeping so much better thanks to this step alone.

</comment></comment></comment></comment><comment><USER16> I just completely broke my sleep. I was in Hong Kong, then Mountain Standard Time and then back to Eastern. My doctor prescribed Zopiclone, so I used it the first couple of nights when I returned. For the first time in my adult life, I have been sleeping 8.5 hours a night. I was usually awake after 6 hours. Occasionally I could get 7.5 but generally with an interruption. It is going to take some time to get used to and I hope it lasts, but it feels great to make progress reading books on dry subjects on a weeknight or just being alert in the afternoon.

We have so much to learn about the body and sleep.

<comment><USER17> I found zopiclone to be addictive. You have the most amazing sleep for the first few days when you take it. Then afterwards when you stop taking it, you get the absolute worst sleep: barely hitting REM, constantly waking up, difficulty falling asleep.

I think: diphenhydramine or melatonin might be a safer bet for some people. Never take it more than a few days in a row.

<comment><USER18> Some people also have luck with Magnesium L-Threonate

<comment><USER19> Yep, Magnesium works for me big time. I take a powdered form which seems a lot more effective than pills. Still wake up in the middle of the night sometimes but can get back to sleep easily without my brain switching into overdrive.

Melatonin definitely knocked me out, but I woke up groggy feeling like I hadn't slept at all

<comment><USER20> Do you take L-threonate or other versions? Have you tried stopping it - <USER3> things get worse than before you started?

</comment></comment></comment></comment></comment><comment><USER21> I just read "Why We Sleep" which covers a lot of the same territory. Vital information, should be in the Human Brain Owner's Manual.

</comment><comment><USER22> Discussed in 2013: [https://news.ycombinator.com/item?id=5244619](https://news.ycombinator.com/item?id=5244619)

and in 2010: [https://news.ycombinator.com/item?id=1207945](https://news.ycombinator.com/item?id=1207945)

</comment><comment><USER23> I fast and maintain a ketogenic diet. Its 5:45am as Im typing this. Ive been up since 4. Went to bed at 11. Currently on hour 35 of a fast that I plan to end mid morning. Unless I still feel "great"...

I have high mental clarity currently. I had high mental clarity when I went to sleep. I did have issues sleeping, but this is nothing new on a ketogenic and fasting state.

From the vast research I've done, sleeping may be more important on a high- insulin-fluctuating diet. However, when the body and brain are fat adapted (less insulin), there is a constant fuel source. The brain operates very efficiently on ketones. Also, important to note that when fasting and doing keto, you must supplement electrolytes.

There is a lot more to all of this and the notion behind the importance of sleep. Anecdotally, diet proves to be more important for me. Do your own research.

related: [https://www.alzheimers.net/diabetes-of-the- brain/](https://www.alzheimers.net/diabetes-of-the-brain/)

<comment><USER24> > From the vast research I've done, sleeping may be more important on a high- > insulin-fluctuating diet.

Could you link to some of your peer-reviewed articles in moderate-to-high impact journals? I'd be really interested in hearing about that vast body of research.

<comment><USER22> Please don't post snarky comments to HN, and especially not predictable snark tropes. We're hoping for thoughtful conversation here.

[https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)

</comment></comment></comment><comment><USER25> I found a 2017 update version of this article.

[http://super-memory.com/articles/sleep.htm](http://super- memory.com/articles/sleep.htm)

</comment><comment><USER26> The arrogance in this thread is incredible. Legions of people pointing to pop science books and talking about how horrible their life would be if they weren't getting their 8 hours. Phrases like "have some respect for yourself" and "you're not getting the most out of life".

Do what works for you, but do remember that your life is just another anecdote. Stop telling others how to live their lives.

I stay up way too late all the time. My sleep is irregular. I rarely get as much sleep as I would if I went to bed at 10pm every night. And yet I'm extremely healthy, I pop out of bed every morning, and I'm always in a good mood. I don't get colds, I don't have memory problems... I don't have any of the horrible effects you all are _sure_ I must have because your book says I must.

<comment><USER27> Well, you will have them sooner or later. Aging changes you dramatically.

But I agree with you, if you get less sleep than generally recommended and you feel fine, then there is little point in sleeping more.

<comment><USER24> I disagree. How would you know that you're fine? There are studies that support the claim that people quickly adapt to their sleep deprived self and regard that as the new norm. That's precisely one of the dangers: that you are not aware of your sleep deprivation.

Obviously, many detrimental effects of sleep deprivation only kick in after many years. And then there are the outliers. Just because you can cross the street blindfolded with headphones on without checking traffic doesn't mean it can generally be considered safe.

<comment><USER26> And there's not nearly enough evidence to establish the causal links that you are so certain of. I get that it "makes sense" to you. It fits in with your worldview. But that's not how science works.

"Studies have shown" is the classic hint that "this person has no clue that they're talking about".

Show me specific reproduced experimental studies with proper controls, talk about effect size, and then there would be no argument. Such proof has failed to arise for countless health trends in the past, no matter how intuitive they may have been.

</comment></comment></comment></comment><comment><USER28> Does anybody else split their sleep into two periods? I've done this out of necessity at several points in my life, first more than 20 years ago when I worked at a job that required me to get up at 3 in the morning and then more recently when I find I do my best work at night (last night, for instance, working at 1 am) but have to get up at 6:30 to help my kids get ready for school. I work from home and can set my own schedule, so I can go back to sleep for a few hours in the mid morning but I am not sure if this is optimal in terms of getting enough sleep or the "right" kind of sleep.

<comment><USER29> Interested to hear more - What time do you sleep? How long for, in each period? How long have you being doing this? Whats the effect been?

<comment><USER28> Currently, 6 hours at night (from about midnight to 6:30 am) and then another 90 minutes to two hours from around 8:30 to 10:30. I started last month.

I feel that I need to do it, as it's very difficult for me to go to sleep before midnight and if I don't get the mid-morning sleep I will be ineffective in the morning. At first I felt bad about doing it (going back to sleep when everyone else is working) but I usually work until about 9 pm at night as well as on the weekends for about 3 or 4 hours on Saturday and Sunday so I feel I am working a normal amount, just at really odd times. And I feel much more productive, particularly in the afternoon which I used to reserve for low- brain activity work.

It replaces a much shorter catnap I used to take in the mid-afternoon, which I have been doing for some years. I no longer need to do that.

</comment></comment></comment><comment><USER30> Honestly, quantity of sleep pales in comparison to the ability to focus, for me (I get enough sleep. I go to the gym. I still can't focus).

<comment><USER31> Have you ever tried L-Theanine? It's a wonder drug for me.

<comment><USER32> I would like to chime in that I also very much enjoy L-Theanine. In addition to (I think) helping me focus, it has an even more pronounced effect on anxiety. When I take L-Theanine and have some obtrusive thought -- cooked up especially to make me anxious by some adversarial force deep in my sub conscious -- I can pretty easily let it go. Most noticeably, the strong 'pit in the stomach' feeling that both signals and reinforces anxiety is absent.

I would encourage nearly anyone to try it. It's an amino acid found in the highest concentrations in green tea. If you've ever had a couple cups of green tea and noticed you feel relaxed and focused, you might want to try an L-Theanine supplement.

<comment><USER33> How do dosages from a couple cups of green tea compare with a supplement's dosage? Are the effects comparable?

</comment></comment></comment></comment><comment><USER34> At the risk of starting a conversation that's more about general insomnia and tangential to the article, has anyone dealt with early morning insomnia? This article doesn't seem to mention it, but I'm wondering if resetting one's circadian rhythms will help.

<comment><USER35> I get this a lot. I tend to sleep for between four and six hours, so if I fall asleep at 22:00 I'm awake at 04:00 it earlier.

This isn't so bad because I'm at work at 06:00 anyway. But it's no fun if I sleep earlier.

I recently went to doc and said as much. Got prescription for 25 temazepam to take as needed in the AM to get me back to sleep.

I don't use them much, but knowing they're there helps a lot.

My other tactics are: jog after work and a few sets on the heavy dumbbells. No food or drink for two hours prior to retiring.

Plus, I keep a bottle of liquid melatonin (sub lingual) and a phased release melatonin tablet (swallowed) by my bed. I'll otfen have a dose of the liquid melatonin plus a tablet as I lay down and read a book in bed. The liquid acts rapidly, tablet less so.

I find this combination of food restriction, plus excercise, plus melatonin, plus reading novels, gives me waaaaaay better sleep than reading HN all night ;)

</comment></comment><comment><USER36> _" We don't get enough sleep, and we are not going to "change our ways" because there are already too few hours in most people's days to do things they enjoy"_

Speak for yourself.

In sleep about 9h a day.

</comment><comment><USER37> What are some good options for tracking your sleep quality(deep sleep etc)?

Sleep clinic would be the most precise but personally I think it induces its own bias as we sleep best in our own beds. Hopefully we sleep in our own beds most of the time.

So what consumer choices are there?

Apple Watch is what I read in this thread but any other fitness trackers/phones with reasonable accuracy ?

I am very doubtful of just a phone app accuracy without some on body sensors.

<comment><USER27> If you don't feel sleepy during the next day, you had a good sleep. Nothing further needed. Why do people today want to insert a gadget/app into everything they do? Too much disposable income? Try investing it for your retirement or something.

<comment><USER37> It's not quite as simple as that if the many posts on importance of good sleep here on HN indicate anything.

Sometimes you might wake from 7.5 hours of sleep groggy and with a headache and sometimes you might feel fresh after 6 hours.

If good sleep is one of the most important things in prolonging and improving your quality of life then it would make sense to take advantage of modern technology to track it.

What's the point of investing extra $100 for retirement if you do not live to enjoy it?

Besides, I live in a country where retirement is far from certain.

I would at least like to know the optimal time for waking up.

<comment><USER27> Optimal time for waking up is whenever you wake up without an alarm clock.

<comment><USER37> How many people have the luxury of waking up without an alarm clock ?

Also waking up without an alarm clock can sometimes lead to oversleeping which is not optimal either.

Ever wake up groggy and with a headache on a Sunday morning after 10 hours of sleep?

</comment></comment></comment></comment></comment><comment><USER38> I've been having trouble getting the page to load. I noticed I'm not alone. Anyone care to speculate on why and how I can avoid this on my sites in the future? I'm guessing someone in devops or sysadmin or with experience would have a good guess

</comment><comment><USER39> The Supermemo is an excellent resource for learning and memory. Full of top notch content.

</comment><comment><USER40> The article link gives a 403 error. Any other link?

Edit: [http://super-memory.com/articles/sleep.htm](http://super- memory.com/articles/sleep.htm) this seems to be the same article.

<comment><USER41> Here you go : [https://archive.fo/9kz4u](https://archive.fo/9kz4u)

<comment><USER40> Thank you!

</comment></comment></comment><comment><USER42> If you visit HN after midnight- This should be the top story

</comment><comment><USER43> Still 403 as of 18:31PDT. server fell over. :(hope it comes back:)

</comment><comment><USER44> The link is down, does anyone know of a mirror/backup ?

<comment><USER45> Should the page go down again: [https://app.pagedash.com/p/322a3507-a4cd-44e0-acd9-9adf52b3d...](https://app.pagedash.com/p/322a3507-a4cd-44e0-acd9-9adf52b3dcba/xPSsOwLXl1bzgzN8fpun)

</comment></comment><comment><USER46> Mods: This link is broken and giving a 403 error.

</comment><comment><USER47> Oh weird, link is broken

</comment><comment><USER48> 403 forbidden. :(

<comment><USER45> It's back up. Should it go down again: [https://app.pagedash.com/p/322a3507-a4cd-44e0-acd9-9adf52b3d...](https://app.pagedash.com/p/322a3507-a4cd-44e0-acd9-9adf52b3dcba/xPSsOwLXl1bzgzN8fpun)

</comment></comment><comment><USER49> What did you have done to the page... Now it's dead.

</comment><comment><USER50> tldr, do not make kids

</comment><comment><USER51> Hi - I'm one of the co-founders of Somni. We've built a product to address chronic sleep deprivation [https://puresomni.com](https://puresomni.com)

Our bundled sleep therapy program includes sleep coaching, education packs, sleep health products and sleep tracking to help you get better sleep so you're healthier and more productive.

please email at firstname.lastname@example.com if you have any questions.</comment>


How many users have JavaScript disabled? - <AUTHOR> http://developer.yahoo.com/blogs/ydn/posts/2010/10/how-many-users-have-javascript-disabled/

<comment><USER2> If you haven't got the experience, then yes, it's going to seem like two times the work. But I am a low vision user who disables JavaScript often because developers don't understand that jut because I stopped moving my mouse doesn't mean I want to see a popup definition of the word I hovered on which obscures my viewport. (I'm zoomed in now as I type this).

I'm saddend (and a little angry) at the number of developers here who absolutely insist it's so much extra work to build a site that doesn't require JavaScript. If you follow best practices, it's not a big deal. Web apps create, retrieve, update, and delete records. No matter how fancy your new startup's idea is, you have to realize that it's all the same task over and over again, and you can do that with simple web forms that don't require AJAX. A little unobtrusive JS to capture clicks, hide boring interfaces, and transform your dull non-JS interface can go a LONG way. Plus you can test that the underlying functionality of your site works _very_ early.

I'm required by law (Section 508) to build accessible web sites at my day job. It's much easier to make Section 508 compliant websites without JS. Then we put the icing on the cake to satisfy the other 98% of our users.

<comment><USER3> (This is an academic point for me right now - I'm building an app in Facebook, and Facebook requires Javascript.)

It seems like your zoom software interacts badly with behaviour that's common on some websites. Disabling Javascript seems like a reasonable workaround, but not without cost. I'm curious - why are web developers the target of your aggravation, rather than the people who wrote your zoom software?

It seems to me that a lot of expensive accessibility software copes well with computing circa 1998. But then it hit a wall. Most of the advocacy and lobbying around this issue seems to focus on forcing most developers to adapt to the limitations of this accessibility software, rather than pressuring accessibility software vendors to provide software which (a) delivers innovation and utilizes advanced technology, as you'd expect in 2010 and (b) deals with common patterns in modern software development.

<comment><USER2> I am aggravated by the developers because developers are the ones who confuse interactions (clicks) with invitations to interact (hovers). When I move my mouse, my viewport moves. That's by design, as the mouse pointer can be placed near words so I can see it. Keeping the mouse pointer visible is important when you can't see it well.

Now imagine I'm surfing as a blind user, and I follow a link from HN, and my screen reader starts reading the page, only to be interrupted by a "take this survey" modal DIV. After a couple of times I'm turning off the JS, cos that's really annoying.

The people who make my zoom software make OSX (it's built into the operating system and it works amazingly well for me except for applications which fire events when I hover.

Following the principles of UJS and web standards makes it infinitely easier, in my experience, to develop web sites that work with screen readers and still use that advanced technology that everyone's gaga over. But if you can't write JS easily that works across multiple browsers, how do you ever expect assistive technology to be able to interpret it correctly? :)

<comment><USER3> The iPad doesn't have the concept of a hover, so websites pretty much have to work without it.

It'd be nice if Apple could turn around and kill the hover in Safari when somebody's using the zoom feature. It'd be even nicer if you could toggle this on and off right now (right Apple button, maybe?) because mouse hovering in the zoom application is obviously _not_ necessarily the same user action as mouse hovering without the zoom app.

"Take this survey" DIVs destroy usability for everybody :(

<comment><USER2> eh, from my experience the iPad does have "tap-to-hover" support which is pretty nice actually. Many hover-only events do work, even ones that haven't been written to support iOS-specific events. So they're doing something.

</comment></comment></comment></comment></comment><comment><USER4> It obviously depends on 1) who your target audience is, and 2) what your website is.

If the target is HN type people I'm guessing the number of non-Javascript goes up.

If the website is pure information, why not provide it even to people who telnet to port 80?

But if the website is a rich interactive application, even if it could fall back on simple form submissions, I'd say it's fair that non-JS users sees a "This requires Javascript" message.

(my answer is very different if the "interactive application" was powered with something vendor/platform-specific)

</comment><comment><USER5> I'm a NoScript user and generally only whitelist JS on sites I use all the time and trust. I'm not overly paranoid about security, but the experience on the web with NoScript is far superior than without it in my opinion. What drives me absolutely insane is when a website is 100% useless unless JS is whitelisted. That instantly gets put on my list of sites to never ever go to again.

<comment><USER6> Doesn't that depend on what the website is trying to achieve? Clearly there are plenty of sites out there whose functionality is necessarily dependant on JS. As long as they make clear that this is the case and what the website is supposed to do, is it all that bad if a website becomes otherwise useless without JS?

<comment><USER7> It's the sites that _shouldn't_ depend on JS that irritate me. Sites that load completely static content, dynamically. Newspapers where you get a blank layout instead of an article. They're more common than you think. I don't mind temporarily whitelisting a site to play with some cool thing but if it's something that shouldn't require javascript at all, let alone need to degrade gracefully, I often just go somewhere else.

And then there's sites like this: [http://partiallystapled.com/~gxti/trash/2010/10/09-javascrip...](http://partiallystapled.com/~gxti/trash/2010/10/09-javascript- hell.png)

</comment></comment></comment><comment> mike-cardwell I use NoScript mainly due to the prevalence of XSS attacks. If a website doesn't require me to enable javascript, even a trusted website, I wont. All it does is open you up to XSS attacks. Lets not forget that google, facebook, twitter, paypal, hotmail, yahoo and countless other big name websites have all fallen prey to these flaws, and will continue to fall prey to them.

<comment><USER8> I'm willing to open up to a very unlikely XSS attack in exchange of a better user experience.

Do you know many people who say: "I won't run C applications because they are vulnerable to buffer overflows."

<comment><USER9> I'm one of those who browse without JavaScript and Flash and for me that IS a better experience. Try it once and see how much better signal to noise ratio is. I also like the additional benefit of having much less chance to be attacked through the browser.

And I also use Opera, exactly because I can enable using the built in browser settings both JS and Flash only for a few sites where I need it (like youtube).

I have just checked again: I don't have JS turned on for HN. It just works.

<comment><USER10> Really? It does not work with noscript. I get a blank page when I attempt to vote.

<comment><USER9> You're right. The vote is counted, so I consider that as "works." The result is certainly ugly, but I'd name that a "minor display issue" as I can hit "back."

Of course it would be nice if that "back" step wouldn't be needed.

<comment> mike-cardwell Yes, that is very annoying. It should just send you back to the page you were already on and to the position on the page where the comment you clicked is.

You could probably also do some clever trick with checkboxes, the css3 :checked pseudo class, and background images to make it work without javascript and without page refreshes. Browser support isn't going to be great atm though.

<comment><USER9> I would expect that it can be reasonably easy fix (a few lines on the right places) to simply deliver some sane content as the result of the vote HTML query.

Shouldn't the referrer tag from the query be enough?

</comment></comment></comment></comment></comment></comment></comment><comment><USER11> That's 2% I could do without, no problem.

<comment><USER12> Explain that to a potential investor. "We snubbed 2% of our potential user base because we were too lazy to make sure that our site degrades gracefully." From the article, that's _6 million_ of Yahoo!'s 300M+ user base.

I really don't understand what's the big deal about making sure your site works without JS, it's just some extra work that you're going to have to do anyway later down the line (and it will be more complex then).

<comment><USER13> If your web page is a simple marketing site, blog, or e-store, then I completely agree.

But if your web page is a complex application, having to support no-JS either shuts you out from from a huge set of interface tools, or forces you to maintain two interfaces in tandem. To me, 2% doesn't justify that, particularly when you can just politely inform the user that their browser has a significant feature disabled, and inform them how they can remedy the situation so that your site works.

<comment><USER12> I agree with you and the posters below that you can't develop two versions. But I'd like to point out that "it doesn't work because JS is disabled" versus "it's not pretty because JS is disabled" are two different things, and they are not mutually exclusive. There are a slew of sites that work without JS even though they depend on it for "fancy" stuff. Plus you don't have to support two different sites in tandem, it's not exactly 100% more work. For example, instead of an AJAX call (which returns content), display the content in a new page, i.e. Slashdot's comment system -- when JS is turned off, clicking on a comment opens it up in a new page.

<comment><USER14> You're overlooking a lot of powerful applications that need SOMEthing to work client-side. Markup.io, recently featured here, is not the sort of application that can post-through to another page to fix. One could argue that it might also work with Flash, or ActiveX, but I'm only even mentioning them to head off somebody else from doing so, as that's hardly a solution.

I suppose it could be implemented as an Applet, but what's important is that Markup.io is exactly the sort of thing that Javascript exists for, really. And yes, disabling JS will break it, completely, and yes, I think that's perfectly forgivable.

On the whole, I agree that my blog should degrade, and data-entry type applications should work as well, but saying that everything should is completely overlooking an entire category of application for which it's perfectly acceptable, in my opinion.

<comment><USER12> Ok, good point. My problem is sites where it is reasonable to expect them to work without JS, but end up not working at all. I would never expect a specialized site like Markup.io or asteroids-on-a-page (forgot the name) to work without JS. News sites, portals, blogs, shopping sites, etc, are all fair game for no JS (like you said).

By the way, not sure if you're the author of Markup.io, but it's pretty cool.

<comment><USER14> Oh, no I'm not even remotely connected to it, it was just the first example that came to mind.

It is pretty cool though.

</comment></comment></comment></comment></comment></comment></comment><comment><USER15> The follow-up question is "Why users disable JS?".

How many do it unintentional because they think JS is Java(applets ...), or the browser does not support it.

I'm also wondering how many people change the advanced JS settings in the browser (do browser other than Firefox even support them?).

I'm one of those 2% for different reasons(open for discussion): \- it blocks 90% of ads, because most banners are JS driven \- I consider JS as a privacy and security vulnerability \- disabled JS saves bandwidth

It never takes more than 2 seconds to get an idea if a page does work without JS, and another 2 seconds to decide if it is worth it to enable JS.

<comment><USER16> I'd reckon that most of them are FOSS weenies and/or security paranoid. At least, that's the common thread among my peers who disable JS as a matter of principle. They are proud of it, and they are happy to find a reason (like requiring JS) to snub your web app.

Then there are the NoScript people, who are willing to whitelist your site to allow JS if they think there is value in it. These people skew the numbers but are pretty reasonable when it comes to turning JS on.

<comment><USER17> I'm one of those NoScript users. Most sites get temporary permissions if they actually need them for something I want to do, trusted sites get whitelisted if I visit them often enough.

Pretty much all of the attacks against Mozilla that might have actually affected me have been mitigated to some extent by NoScript, so it's pretty useful.

</comment></comment></comment><comment><USER18> NoScript has 74,459,688 downloads so far (<https://addons.mozilla.org/en- US/firefox/addon/722/>). You'd have to do some calculations with this to get closer to a real user number, though ;)

 _I'd wager that the average NoScript user has at least two machines, so the total number of NoScript users is probably less than 2.7 million._ ([http://blog.brandonbloom.name/2010/06/noscript-add-on- instal...](http://blog.brandonbloom.name/2010/06/noscript-add-on-install- base.html))

<comment><USER13> I'm also guessing the majority of NoScript users have exceptions whitelisted for many trusted sites, given how many sites are completely useless without JS.

<comment><USER19> Yes, and I happen to have Yahoo! sites on my whitelist, which tells me that their stat is not reliable. The actual percent of users who block JavaScript may be higher, given selective blocking, as provided by Opera and Firefox's NoScript.

</comment></comment></comment><comment> mike-cardwell If your website relies on JavaScript to work, then you're excluding people who _can't_ use JavaScript. Disabled people with screen readers.

If you don't cater for those people, put some money aside for lawyers.

<comment><USER20> This is a straw man argument that is not grounded in fact:

[http://www.dojotoolkit.org/reference- guide/dijit-a11y-statem...](http://www.dojotoolkit.org/reference- guide/dijit-a11y-statement.html)

I have built many sites with the specific criteria that it work with JAWS. I do not use Server Side web frameworks and my UI logic is implemented entirely in JavaScript. I am an authority in the usability and accessibility field and am hired as such by many of the big boys. JavaScript has nothing to do with accessibility and in fact can be used to increase usability for the disabled. People confuse JavaScript with bad UX design that hinders accessibility.

<comment> mike-cardwell You'll forgive me if I listen to a combination of common sense, and the guy who said "I say this as a visually impaired developer with several blind friends and family" instead of the guy with a vested interest.

<comment><USER20> Sure I will forgive you, but I will also note that again this is a case of blaming Javascript for bad UX design. The evidence is in his post. I just highlighted it.

</comment></comment></comment></comment><comment><USER21> Could the argument be made that the minority who surf with Javascript disabled don't necessarily have to be catered to, since they will enable Javascript if they trust the site or find it useful?

<comment><USER22> There may be lots of reasons to disable javascript or not have it available at all such as security policies, bandwidth restrictions, limited hardware devices or other things you haven't anticipated.

I think it depends on what content you're providing and which users you want to reach.

I've seen text-only blogs that involve javascript in their visual design and cannot be read without it. I've also seen websites where the site navigation links are rendered by javascript. In both cases the sites are inaccessible to non-javascript users.

In my opinion if you can provide the same content without requiring active scripting, you should. If you're providing an interactive experience that can't be achieved without scripting at least be aware that you're limiting your user base. Even if users have scripting available but disabled by choice, they may decide that your content is not worth enabling scripting for.

I'm also concerned that technical users who disable javascript by choice might not frequent a site like "yahoo" as much as non-technical users. I'm curious if a more neutral but still popular site would have a larger percentage of non-javascript visitors.

<comment><USER21> Very good response, I agree that the base functionality should exist without Javascript, and I would assume that most who disable it are willing to forego bells and whistles, but will still use your site if the basics work. This also ties into best practices of having Javascript which degrades properly.

</comment></comment></comment><comment><USER23> But how many of those 6 million are bots and scripts like mechanize scraping the site?

<comment><USER24> From the article:

"We took a combination of access logs and beacon data (previously included in the page) and filtered out all of the automated requests, leaving us with a set of requests we could confirm were sent by actual users."</comment></comment>


Will Garmin Pay $10M Ransom to End Two-Day Outage? - <AUTHOR> https://www.forbes.com/sites/barrycollins/2020/07/25/will-garmin-pay-10m-ransom-to-end-two-day-outage/ <comment><USER2> Too bad, love Garmin's products, if you ever have to make a detour someplace where the cell service isn't great you want to have one of their GPS units. I don't trust any phone apps outside of a major city. But sounds like they have some serious IT issues if hackers can cause this much disruption, you would think there should be some compartmentalization between the personal and professional products, between manufacturing and web presence. You can bet there will be after.

<comment><USER3> What's wrong with offline maps on a phone?

<comment><USER4> Some Garmin devices can receive traffic data via radio, which your phone can't do. Garmin also usually has business names and gas stations, whereas I've found Google maps offline will only let you navigate to a specific address (Android), and it's reliant on you remembering to store the map offline. If you found yourself in an area without signal, and you didn't pre-save, you'd be screwed, which I've had happen plenty of times.

Personally I use offline maps, but only on specific trips where I know for sure I'll have no data

<comment><USER2> It's one of those always be prepared things - I was making a routine trip through Albuquerque once where just outside of Tucumcari I encountered a traffic jam from a huge crash up involving many vehicles and fatalities that ended up closing both directions of the interstate for ten hours. I managed to get off onto a farm road and found path around the accident - fifty or sixty miles of two and one lane farm roads, barely populated, at dusk. Passed more rabbits then cars. Twice I had to get out and check what was on the other side of the hill I was about to drive over. But turns out they were real roads and I made it To Albuquerque in time for a really late dinner at Waffle House. The interstate opened back up about six hours later. Would I ever have attempted that with only a phone? Never. If my route got cleared for any reason I'd have been in a bad situation. I don't trust a phone app would have downloaded enough information to even compute an epic detour like that - I went well over thirty miles away from the original route before reaching the road that went back.

</comment></comment></comment></comment><comment><USER4> I'd be shocked if they ever admit it was ransomware. Besides nearly no public response, what they finally put out still just frames this as an "unfortunate outage", sidestepping the reality of a (likely) massive data breach.

I _am_ shocked that once again another company is willing to do their brand serious damage by keeping quiet and not trying to allay customers fears of stolen information, compromised app updates, and $800 paperweights.

Pilots can't update their flight databases, an FAA requirement, nor upload flight plans, so it's more serious than some are claiming. And yet, near silence.

<comment><USER3> How can they allay fears after the information was already stolen?

<comment><USER4> By not saying anything, they're actually adding to the fear, rational or not. Ransomware is headlining, and they're pretending it isn't happening.

Simply stepping up and admitting it at least allows their customers to take steps to protect their data, credit cards, change passwords, etc.

<comment><USER3> Customers don't need to be "allowed" to protect their data.

I promise you that several major companies have already been quietly breached and credentials stolen.

> credit cards, change passwords

Are already stolen, Garmin hack or not.

1\. Your credit card number is public. Deal with fraudulent activity in the usual way.

2\. Passwords should be unique. Non unique passwords are already stolen, and unique ones probably are. 2FA and suspicious login detection is what protects you.

<comment><USER4> I used 'allow' as in, "take into consideration", not "allowed to do something."

You're not wrong, but the huge difference is knowing about specific attacks versus constantly assuming your data is always compromised. Changing your password daily, and canceling your credit card for a new number daily, regardless of breach, is basically what you're suggesting.

Further, we still don't even know if it is in fact a hack, which is the point. If they simply came out and said that their production line got ransomware, but user databases were unaffected but taken offline as precaution, that would go a long way to suggesting what level of mitigation is necessary

</comment></comment></comment></comment></comment><comment><USER5> My Android phone is now giving me notification of an updated version of Garmin Connect and I am feeling reluctant to install. Does anyone know, is there any way to verify that the changes are safe ? (Changelog, audit, integrity check) does Google Play verify an update in a case like this? I don't know how this works

In a scenario where Garmin is completely compromised, is it unthinkable that the attacker could also distribute malicious updates to millions of devices ?

</comment><comment><USER6> If governments made it illegal to pay ransoms, this sort of thing would happen 100x less often. What did they always say in 90s action movies: "the policy of this administration is to never give in to terrorist demands"?

<comment><USER4> A bleepingcomputer article linked below mentions it's possible Garmin would be violating US sanctions by paying the ransom, since Evil Corp (the supposed operators of this ransomware) was sanctioned by the US Treasury department

[https://www.bleepingcomputer.com/news/security/garmin- outage...](https://www.bleepingcomputer.com/news/security/garmin-outage- caused-by-confirmed-wastedlocker-ransomware-attack/)

</comment></comment><comment><USER3> Garmin's tight-lipped statement

[https://www.garmin.com/en-US/outage/](https://www.garmin.com/en-US/outage/)

</comment><comment> intro-b Garmin's stock price has dipped slightly since the beginning of the reported outage and ransomware news and may continue to do so - I speculate perhaps these actors might also double-dip on their attack by both ransoming the data and selling/purchasing options on the company's underlying stock, especially if they are more aware of how much damage they're able to inflict than the company themselves

</comment><comment> m-p-3 Hopefully it's going to be a wake-up call to make their connected devices and softwares a bit more resilient in case of an outage.

Or maybe I'm too optimistic.

</comment><comment><USER7> Anecdotally, my son got Vívofit jr for his birthday on Thursday, we tried to set it up and couldn't... the app was reporting server error that day and the next day. The only thing I could think of was that they don't have any monitoring for their server APIs... but this explains it.</comment>


I need a MacBook Pro (or, web development on the cheap) - <AUTHOR> http://wrttn.in/e389f6

<comment><USER2> reconsider the linux option. It's how many students in India (including me) picked up development skills.

<comment><AUTHOR> I know. Even with linux on it, there's only so much you can do with a 9-inch screen and an 8gb HDD (plus an 8GB SD card, mostly filled with school related stuff), especially when building websites. As of now I have less than 100mb.

I can't even run Photoshop properly, or any of Adobe's programs :p

<comment><USER2> gimp will run just fine on your current box. My first linux box was a Pentium 133MHz box with 4MB RAM and a 2GB hard disk drive. I had a 14" CRT monitor. I learnt almost everything I know on that. I could set it up as an HTTP server, DNS server, SMTP server, DHCP server, run ethereal (now wireshark), study protocols, program in a myriad of languages, set up a database server, simulate multiple hosts in a virtual network and much more. You're only limited by your imagination.

<comment><AUTHOR> One of the biggest problems I have now, though, is the lack of hard disk space. The other day I couldn't run 'gem install' because there wasn't enough disk space (I've been in the single-digit megabytes quite a lot). Schoolwork takes up a few gigabytes in itself.

Also, it's not so much the software (though it is when, for instance, I work with other people or for clients) but the size of the screen. Someone did recommend an outside monitor, but that would hog the integrated graphics card a bit (which takes a bit of ram itself).

It's also inconvenient because it's too small, it actually hinders my schoolwork. I can't use it for more than an hour or two before it takes a tool on my eyes and head.</comment></comment></comment></comment>


The Dictated Blog Post - <AUTHOR> http://www.avc.com/a_vc/2010/01/the-dictated-blog-post.html <comment><USER2> _My friend brad feld says we won't even use keyboard input in 10 years i'm starting to think is right_

That's absurd. I can type much faster than I can speak. Further, I suspect that most spoken improvisations will be as poorly writen as this one.</comment>


Free Classic Books by MIT Press on Archive.org - <AUTHOR> http://www.openculture.com/2017/08/free-you-can-now-read-classic-books-by-mit-press-on-archive-org.html <comment><USER2> I wonder how they define "classics" \- two of my cherished titles from MIT Press are "IBM's Early Computers" (1985) and "IBM's 360 and Early 370 Systems" (1991).

They're examples of what I consider "The Perfect Computer Book".

[https://mitpress.mit.edu/books/ibms-early- computers](https://mitpress.mit.edu/books/ibms-early-computers)

[https://mitpress.mit.edu/books/ibms-360-and- early-370-system...](https://mitpress.mit.edu/books/ibms-360-and- early-370-systems)

<comment><USER3> I started my career coding System 370 assembler. I'm curious as to what constitutes your perfect computer book.

<comment><USER2> Depth of information, organization, etc. I wish there were more books like these covering other platforms - like one about DEC's minicomputers, another covering Cray, etc.

Plus they're nice and thick, without a third of it being indexes and footnotes.

<comment><USER4> Have you read Tracy Kidder's book _Soul of a New Machine_? If so, what did you think?

I read it five or six years ago and I loved it.

<comment><USER2> Yes, I read it in the mid-80s and loved it, and own multiple copies. Steven Levy's _Hackers_ is a similarly good book.

I found out years later that one of the moderators on a discussion site I frequent is Tom West's daughter, and I sold her a laptop at one point.. Isn't it weird how "small" the world can be?

</comment></comment></comment></comment></comment><comment><USER5> Direct link: [https://archive.org/details/mitpress?sort=-downloads](https://archive.org/details/mitpress?sort=-downloads)

<comment><USER6> There's about 4 times as many books with this link:

[https://archive.org/search.php?query=publisher%3A%22MIT+Pres...](https://archive.org/search.php?query=publisher%3A%22MIT+Press%22)

I'm not 100% sure what the difference is, I just noticed that one book I'd been able to borrow didn't show up on your list:

[https://archive.org/details/turtlegeometry00haro](https://archive.org/details/turtlegeometry00haro)

</comment></comment><comment><USER7> Hard not to think of Aaron Swartz when reading something like this…

</comment><comment><USER8> What does it mean, "This item is restricted":

[https://archive.org/details/aircraftenginesg00kerr_0](https://archive.org/details/aircraftenginesg00kerr_0)

<comment><USER9> From the article:

      "Together with MIT Press, we will enable the patrons of every
      library that owns one of these books to borrow it online–one
      copy at a time."

Looks like Archive.org will be hosting it, but you'll have to go through a library to access it. It's an improvement, but not freeing the books entirely.

EDIT: I can't figure out a pattern. I can check out some, but not others with no discernible pattern. No connection to a library, just my Archive.org account.

<comment><USER10> How do you "borrow something online" ?

If I download a file from a server, I am sent a copy of the file. They only way I can "borrow" something online, is if they sent me a copy of the file, and then deleted their copy after I received my copy. Then we have to follow the same process in reverse when I "return" the file.

<comment><USER9> I didn't try downloading. Presumably some sort of DRM on that. I was reading the book through some web-based interface. When borrowed, it gave me 14 days access to it. Then it'd be automatically returned and I'd have to get in line to borrow it again to continue reading.

</comment></comment></comment></comment><comment><USER11> Which computer science books should I watch out for? I am a software developer but without a CS degree and I'd like to learn more CS fundamentals.

<comment><USER12> Structure and Interpretation of Computer Programs - 2nd Edition

Concepts, Techniques, and Models of Computer Programming

And the books in the "The Little Schemer" series.

I would also suggest "Artificial Intelligence: A Modern Approach" but this is not from MIT Press.

<comment><USER13> MIT Press has published SICP online for free for years.

[https://mitpress.mit.edu/sicp/full- text/book/book.html](https://mitpress.mit.edu/sicp/full-text/book/book.html)

<comment><USER12> Under CC-SA nonetheless. In fact, Hal Abelson (one of the authors of SICP) was also one of the founders of Creative Commons. Moreover the other author (Gerald J. Sussman) is in the board of directors of the FSF.

</comment></comment></comment></comment><comment><USER14> Making classic MIT books available for free is only a tiny part of the many important things Archive.org is doing. The GOOD WORKS of the Archive is worthy of your financial support. [https://archive.org/donate/](https://archive.org/donate/) to support the cause.

Explore the website, [http://archive.org](http://archive.org), and discover the amazing collection.

<comment><USER12> Archive.org is one of the greatest sites in the world right now. The only negative thing that I have to say about it is the retroactive removal of sites that have a anti-bot stance on robots.txt (even if it does not ban archive.org specifically). I would understand if they did not crawl sites that had such a robots.txt but I find the retroactive removal a dangerous policy.

<comment><USER15> It's unfortunate but they operate in a sufficiently grey area of law that they really need to bend over backwards to comply with the wishes of someone who owns or may own the content. I don't particularly like it either but I understand why they feel it's a prudent policy.

<comment><USER16> If internet access is a human right, which I believe the UN said it is? Well, then we could have special laws for internet archival? Much like we have laws that prevent the destruction of historical sites. It's not that anybody is making a quick buck at the expense of somebody else.</comment></comment></comment></comment>


Primary 5 maths question goes viral, stumps adults - <AUTHOR> http://www.straitstimes.com/news/singapore/education/story/primary-5-maths-question-goes-viral-stumps-adults-20150413

<comment><USER2> [https://news.ycombinator.com/item?id=9375643](https://news.ycombinator.com/item?id=9375643)</comment>


Tax filing checklist for early-stage startups (Delaware C Corporation) - <AUTHOR> https://medium.com/@canolcer/tax-filing-checklist-for-early-stage-startups-delaware-c-corporation-with-links-726b585869a0 <comment><AUTHOR> I made this list. Why? I thought paying a tax firm $1-2k is way overpriced for a small startup without employees and revenue. So I thought there is undoubtedly a website that provides an overview of all forms and stuff that we need to file. However, I didn't find something useful.

So I thought If I'm going to dig and do the research, I might as well share it with all others that probably have a similar problem.

Mind you that this is a specific list for Delaware C Corps whose principal place of business is in California and have few employees, minimal revenue.

It's possible that I've missed or misunderstood something. Just let me know here, and I'll add it to the list.</comment>


Flying Blind: A Case against Traditional Advertising - <AUTHOR> http://www.avc.com/a_vc/2010/08/flying-blind-vs-flying-with-instruments.html

<comment><USER2> Summarized: "I suggested they only invest in advertising and marketing that they could test, measure, and then scale what works. And that is Internet advertising."</comment>


China Calls Google's Gmail Accusations 'Unacceptable' - <AUTHOR> http://www.pcmag.com/article2/0,2817,2382351,00.asp

<comment><AUTHOR> ironically this article is blocked from within china...</comment>


Visual Studio Code 1.7.1 - <AUTHOR> http://code.visualstudio.com/updates/v1_7#_171-recovery-build <comment><USER3> Can I say that I really like the speed of these updates? The team Microsoft really seems to be invested in this free code editor.

And a lot of the features are cool, however I really like:

| Help > Keyboard Shortcuts Reference brings up a printable PDF reference sheet of VS Code command keyboard shortcuts. Keep this reference handy and you'll be a VS Code power user in no time.

<comment><USER4> _The team Microsoft really seems to be invested in this free code editor._

It's great strategic marketing. Making Visual Studio Code costs a fraction of what Microsoft spent on the Surface RT marketing campaign (as an example), and the benefits to their image are much more powerful and long-lasting.

The Microsoft brand has been completely reborn in the eyes of developers over the past few years. The lows of 2007-2010 seem a distant memory.

<comment><USER5> I don't get the end game though, what is the strategy?

Ultimately, if you end up using Linux .net core + typescript, they seem to be killing off visual studio, IIS, Windows Server, etc.

For what? Azure, glorified hosting that might end up a race to the bottom vs AWS & GCE? Selling SQL server licences?

I just don't get the strategy. I'm genuinely asking, where is this actually taking them apart from burning a bunch of money making free tools? Why are they making .Net core?

<comment><USER6> In 2012ish as a freshman intern at Microsoft, I asked Will Kennedy (then CVP in Office) how did he feel about people pirating Office apps. He said that they would rather permit people to use illegal versions of Office than have them use their competitor's tools. Essentially he was saying Microsoft would rather people use their products free of charge rather than using other products as it promotes Microsoft image and helps Microsoft dominate the workspace. Promoting VSCode vs Visual studio are not competing efforts - <USER2> two tools are solving different problems in different work environments / tech stacks. They're simply trying to branch out to permeate more of the workplace, and it's working. Now that I'm in a startup in SF, I look around and I see some people switching from Sublime to VSCode for our web/backend stack, who would never ever use Visual Studio (100% macs here).

<comment><USER7> Sublime, people still use that over Atom? Do you see more people using VSCode than Atom, or Emacs? What about TextMate 2, no one?

Which language do your backend guys use VSCode for?

<comment><USER8> Yup, Sublime Text rules. I still use 2.0.1 at work (on a Mac) mainly for Perl and JavaScript. It always works, it's fast, doesn't ever crash. I didn't like VSCode that much (mainly have a problem with the toolbar on the right and don't want to learn new key bindings/menus etc). Also I don't use debuggers that much, so it's a useless addition to VSCode for me. Atom is a lot like Sublime in terms of usage, but it's painfully slow. It is getting a bit better with every new iteration though. I'm using Atom at home for learning new stuff, as Sublime's widgets are fairly different from the general UI in Linux (looks like an editor from outer space) and Atom tends to integrate somewhat better.

<comment><USER7> Have you used TextMate 2? Possibly the editor with the best integration UI- wise, also, easily the most performant.

<comment><USER8> No, but if it's not open source and multi-platform (at least Linux and Mac) then I see no reason to switch. That's why I probably ignored it, in fact; also why I keep checking Atom out.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> Commit for the fix to the npm issue located here: [https://github.com/Microsoft/vscode/commit/b3c10273d7ba34086...](https://github.com/Microsoft/vscode/commit/b3c10273d7ba340865fd2549603e436e0c062c05)

<comment><USER10> Looks like you can set an environment variable and still get the automatic typings/intellisense functionality?

CH_ATA_ENABLE=true

then open VS Code?

</comment></comment><comment><USER11> I love Visual Studio Code for a strange reason:

 _I don 't actually use it_, but by existing and being good, it should force Sublime Text to up its game!

<comment><USER12> Sublime has served me well for years and I still use it for working with MASSIVE files as all other editors seem to choke on these, but VSCode is leaps and bounds ahead of Sublime Text. A great editor that fell behind a while ago, they didn't step their game up when Atom came out, I doubt VSCode will change anything sadly. Also worth pointing out that VSCode with its debugger, intellisense, addons and other things is ahead of all competitors right now on all fronts.

<comment><USER13> It's a shame because Sublime is one of the few pieces of software that I use on my computer on a day-to-day basis that isn't a buggy POS (besides the well- written venerable UNIX shell apps).

Firefox? Buggy. Chrome? Buggy. Any other GUI editor? Buggy. Android Studio? Buggy. XCode? Buggy. I could go on all day.

It's written in C++, too, so it's lightning fast. There's no reason UIs should be laggy in 2016 on the very highest-spec Lenovo Thinkpad mobile workstation, but that's the sad reality of anything written in Electron JS (along with zero 4K Hi-DPI support on Linux, so I have to squint to read the microscopic text on Slack, Upwork, Discord, Messenger for Desktop, Whatsie, Skype for Linux Alpha, ...).

<comment><USER14> That sounds more like a Linux problem than an Electron/JS problem ;-)

<comment><USER15> ++

Although it's definitely an Electron problem. My few experiences with Atom have been that it is absolutely and unacceptably slow on top hardware.

</comment></comment></comment></comment></comment><comment><USER16> I'm impressed by the speed of the releases here. 1.7 to 1.6 to 1.7.1 within a single day.

<comment><USER17> I wonder how many people at MS had to pull an all-nighter to make that happen.

<comment><USER18> It does help that Erich Gamma & team are in Zurich...

<comment><USER19> 5 people. Microsoft employee here. NOT.

</comment></comment></comment></comment><comment><USER20> Electron is a great framework. I've used the same applications on several OS's, each seemed stable and fully functional.

<comment><USER21> I'm curious why Atom gets so much crap for being an Electron app, whereas VS Code is generally praised for it's speed. Are they doing something significantly different from each other?

<comment><USER22> I suspect there's some bandwagonism at play in some of it, but I think the VS Code team has generally applied lessons learned from some of Atom's more obvious performance shortfalls (large file handling, for example, for which support was added very incrementally).

In my day-to-day usage I'm not seeing any significant performance differences between Atom and Code, but that may just be a function of my particular use cases, or it may well be that newer versions of Atom have, at least somewhat, caught up to VS Code.

<comment><USER23> The performance difference between Atom and VS Code is very noticeable on low and mid range PCs. Most of us here on HN are very fortunate that we can afford high end PCs that minimizes performances bottlenecks but we should keep in mind that most of the world isn't so fortunate and that good performance still matters.

<comment><USER24> I've been developing on a chrome book for the past year. I can confirm that vs code runs very smooth, while atom is finicky and just flat out dies on opening large folders/files.

<comment><USER20> Kudos to another chromebook dev! Are you running Ubuntu in a Crouton, or another setup? I'm doing that and I run Atom without any complaints. It might just be the way I'm using it however.

<comment><USER24> I removed the write protection screw, upgraded my ssd, flashed on a new bios from [https://mrchromebox.tech/](https://mrchromebox.tech/), and installed galliumOS--originally I used chrubuntu, then straight ubunutu. Everything works great. Even installed display link drivers, so I can dock to 2 monitors at work.

Can you open arbitrarily large text files/directories in atom these days? Whenever, I open anything over a few thousand LOC atom seems to lock up for me. I was actually forced to switch from Atom to VSC, because I had a bad habit of accidentally clicking on `node_modules` in the file tree and crashing my session.

<comment><USER20> I had someone on here mention the write protection screw removal method to me before, I just couldn't bring myself to do it on my Pixel 2. But I should try it, I'm glad to hear someone say it worked out great for them. I definitely want to still be able to boot into the normal Chrome OS because it's preferable to me when I'm not working.

I think I see what you're saying. Maybe it's because the pixel is actually a beast, I don't notice it as much. I have VS Code installed, maybe I should give it another shot. I'm probably just used to Atom, and the only time I really used VSC I was trying to work on one of our really large .NET solutions and it just started throwing hundreds of errors at me. I should try one of my MEAN apps in it.

<comment><USER24> The pixel is in fact a beast. I almost bought one, but was worried about the tiny ssd. Do you find space limiting at all?

VS Code has been stellar for JS and Go. The ruby experience has been pretty meh. Definitely depends on language/community support.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER25> From yesterday, the 1.7 release: [https://news.ycombinator.com/item?id=12859347](https://news.ycombinator.com/item?id=12859347) and subsequent reversion: [https://news.ycombinator.com/item?id=12860806](https://news.ycombinator.com/item?id=12860806).

</comment><comment><USER26> I enjoy working in C and C++ (on Windows) using Sublime Text however I am thinking of giving VSCode a proper try. I know many people use VSCode for web related development but MS seem quite serious about improving its support for C and C++.

My question is does anyone here use VSCode for C and C++? What is your setup? task files, etc?

<comment><USER27> Yes, I'm using it for C++ dev :) I'm mostly using the C/C++ extension from Microsoft, unfortunately it's still closed source.

I'm developing on Linux and Windows with MSYS2. Here are my config files: [https://gist.github.com/jhasse/a3898302e4f8be682d053dd5e3b4b...](https://gist.github.com/jhasse/a3898302e4f8be682d053dd5e3b4b62a)

<comment><USER26> Awesome, thank you!

</comment></comment></comment><comment><USER28> I did a small video showing the new features of v1.7.1. (Note: this is for beginner only :) ) [https://www.youtube.com/watch?v=hQPZPvY- z_s](https://www.youtube.com/watch?v=hQPZPvY-z_s)

</comment><comment><USER29> Welp, looks like last night was sleepless for some people.

<comment><USER30> In Swiss the day just ended. (The vscode team is partly located there)

<comment><USER29> I know I am from Europe too, but 1.7 was released and pulled back yesterday (evening), and this noon 1.7.1 was released. :)

</comment></comment></comment><comment><USER31> Imagine if Windows 10 updates looked like these Release Notes.

</comment><comment><USER32> For those who want the disabled feature:

Typings auto installer - [https://marketplace.visualstudio.com/items?itemName=jvitor83...](https://marketplace.visualstudio.com/items?itemName=jvitor83.typings- autoinstaller)

I've used this extension for the last 2 months, it works great.

</comment><comment><USER33> I'm blown by the speed of it, considering it's built upon electron. Since I haven't yet decided to upgrade to sublime3, might just give VS Studio a shot. For serious development I use IDE of choice, but for quick text editing sublime might get replaced with VS Studio.

</comment><comment><USER34> I wish they left a flag for the people running their own npm mirror.

Other than that, it's hard not to be impressed by how quickly they made another release. Congratulations!

<comment><USER35> If you are interested in getting the latest features, try VSCode Insider version[0].

[0]: [https://code.visualstudio.com/insiders](https://code.visualstudio.com/insiders)

<comment><USER36> Oh. never known it. how stable is it?

<comment><USER37> Its an insider preview, it will be hit or miss depending on the release. VSCode release updates often and they have broken things in the past, which usually get patched within a few days.

Don't do Insider if you need a guarantee of stability.

</comment></comment></comment></comment><comment><USER38> > CSS autocompletion within HTML

Wasn't expecting this! I wonder if they plan HTML autocompletion within PHP. This would really speed up my work.

</comment><comment><USER39> Is there a Debian/Ubuntu repository somewhere? They provide deb packages but I couldn't find the repo anywhere.

<comment><USER27> Not yet. Issues:

deb: [https://github.com/Microsoft/vscode/issues/2973](https://github.com/Microsoft/vscode/issues/2973) rpm: [https://github.com/Microsoft/vscode/issues/229](https://github.com/Microsoft/vscode/issues/229)

</comment></comment><comment><USER13> Why do we get another HN post everytime VS Code releases another update? Can we consolidate them somehow?

<comment><USER40> Updates are monthly. Would you prefer a six-or-twelve month digest summary?

<comment><USER13> There were three in the past few days.

</comment></comment></comment><comment><USER41> Is there any way to import an existing visual studio project/solution into this?

</comment><comment><USER42> I would love to use this but i cannot get used to the syntax highlighting. How can i remove syntax highlighting in vscode ? There does not seem to be a obvious config option in the docs.

</comment><comment><USER43> I have a question.

I'm using WebStorm mostly but I'm not "married" to any particular IDE, I've used others and I switch around relatively easily.

I'm doing a slightly different programming style when it comes to types: I don't use "no types" or TypeScript or Flow, but I _do_ use "types", sort of. What I've done is JSDoc the hell out of my code. There is not a variable without a JSDoc or Closure compiler type annotation. Those are all just comments, so I don't need to "Babel" my code. Since I'm using the latest node.js and only those ES 2015+ features that it happens to support that is enough.

It works because the IDE (WebStorm) uses the JSDoc comments to infer types, and the IDE itself provides the equivalent of what something like Flow or TypeScript wold do.

Well - to a point. I'm not really satisfied. I always keep submitting tickets for WebStorm, and while they have solved a lot there still are too many fundamental issues with how they infer types. For example, I get offered object properties from files I don't even include in the file I'm in, not even indirectly! For example, "mocha" might have an internal (!) variable somewhere that has a property "data". Since I have a property "data" too I get the definition inferred from that mocha file, which makes no sense, since a) I'm not even in a test file that includes mocha, and b) even if I was, that is an internal variable that's not exported.

They don't seem to be able to solve this issue, and with new EAPs I often get two steps back for very hard-fought step forward. To be honest, I believe their code for inferring types in Javascript is just too messy, it seems each time they plug a hole it doesn't last long and two new ones appear.

However, when I try VStudio it seems that I only get type inference if I use TypeScript?

I would be open to using "Flow", but I really, really don't want to have a different language. I just want types and standard Javascript! Yes I know TypeScript appears pretty much the same as ES 2015, but it still rewrites my code. I would not mind, except that there really is no reason at all since ES 2015 has everything I need (I don't use classes or even prototypical inheritance, no inheritance at all, only composition and functions).

From my limited research the best albeit not quite satisfactory solution for my case still remains only WebStorm? I mean, if they fix the problems introduced with the EAP version a few weeks ago when all JSDoc based type suggestions stopped working I can live with that state.

It would be nice though if I could have a "comment based type system" (JSdoc/Closure compiler) or Flow. How would VStudio do in this scenario?

<comment><USER44> Typescript can actually use the types you provide in JSDoc[1] so you will see benefits simply by using VS Code in most cases.

[1]: [https://github.com/Microsoft/TypeScript/wiki/JSDoc- support-i...](https://github.com/Microsoft/TypeScript/wiki/JSDoc-support-in- JavaScript)

<comment><USER43> That is interesting, I did not know that.

Still, I don't want to use TypeScript for the reasons I wrote. I'm as minimalist as possible, and I don't want to use a language that changes my code to something else without any gain for me since I can write exactly what I want in ES 2015+ already. So it's just those types, and I could get them from "Flow" too and in that case keep my ES 2015+ code. Yes I know TypeScript is very close to ES 2015+, but I never know when it _does_ change the code unless I look at the transpiled result.

EDIT: Actually, I _did_ know that, looking at that page I remember why I dismissed it:

      > Note any tags not listed explicitly below (such as @typedef, or @constructor) are not yet supported.

But that is something I make heavy use of. It would be really messy if I wasn't able to introduce "custom types" even in my limited "IDE based static type system".

<comment><USER45> > I don't want to use a language that changes my code to something else

TypeScript doesn't change your code. If you're writing ES2015 code and targeting ES2015 emit, the output code is _always_ exactly what you put in. There isn't any difference.

<comment><USER43> I guess I'll have to look into that again then.

<comment><USER46> Right, most of the code changes Typescript performs are the equivalent of babel plugins: the closer you write to the target output version of the language the fewer changes there between the input/output. The further back compatible you try to target the more "polyfills" and reconfiguring Typescript needs to do to support the older versions of JS.

Most of Typescript's output changes when you are writing for the same version of JS that you are outputting are simply just removing the type hints from the final output.

That said, with allowJS "mixed" mode of Typescript now you can also try for a hybrid approach of JS and TS files in the same project and that hybrid approach gets more powerful and capable with each release. I think with some effort you can even get somewhat close enough to the point that you can have some Flow-like behavior by using JS for most files and .d.ts and .ts files for only the really type-dependent stuff.

<comment><USER43> I hope that is going to be a major use case for TS (i.e. directly intended and supported by the makers), i.e. (guaranteed) "just types".

</comment></comment></comment></comment></comment></comment></comment><comment><USER47> The laughable JSON snippet format is enough reason for me not to take VS Code seriously as much as I want to.

</comment><comment><USER48> I think it has fast paced development because most of the people in MS use this editor all the time. If it is their native home unlike Store apps or MS Office then why wouldn't they make it feel good. It's natural to take care of place where you live most of the time.</comment>


Ask HN: Normalizing logs between components - <AUTHOR> This is a software design question: I have different components which do similar operations (similar, not identical) and I want to normalize the logs that each component emits so I can make diagnosing issues easier. What approach should I take?
One thing I have thought about is using an error code for a specific known fault and then emit a message based on the error code (think M$ error codes) - same message parameters for all components but the values differ.
I'm more interested in hearing how this has been addressed by HNers who have had to build this functionality in the wild. If there are references, please share. <comment><USER2> My random advice from the internet.

Prototype at the level of text output at the shell level bash/sed/gawk/grep because:

1\. It may turn out that that's all that's needed.

2\. Making changes in one place is easier.

3\. It is more flexible when trying to figure out what should be done.

4\. It will not introduce a bug into the existing code.

5\. It will not create a dependency between the components.

6\. The shell is the appropriate level of abstraction for logs.

This might be a good question for Software Engineering on StackExchange.

Good luck.</comment>


Gmail.js – JavaScript API for Gmail - <AUTHOR> https://github.com/KartikTalwar/gmail.js <comment><USER2> I've written a couple of articles on the proper Gmail API, why doesn't this just use that instead of scraping the DOM?

[https://www.sitepoint.com/mastering-your-inbox-with-gmail- ja...](https://www.sitepoint.com/mastering-your-inbox-with-gmail-javascript- api/) [https://www.sitepoint.com/sending-emails-gmail-javascript- ap...](https://www.sitepoint.com/sending-emails-gmail-javascript-api/)

<comment><USER3> I don't think that this seeks to achieve the same thing as your articles. Does it?

The big selling point for me is the observation of events like compose window. You can then write code that plugs into the gmail interface.

</comment></comment><comment><USER4> We used this for a project before, just be aware that the DOM changes regularly for gmail, and if an API you rely on breaks you will be SOL until someone fixes it.

<comment><USER5> It's open-source, if you rely on it, fork it and fix it yourself.

<comment><USER4> The issue is that gmail will update at anytime, without warning, so there will _always_ be a period when your service will break. And you need to have unit tests running often to figure out when it breaks, and have a dev on call 24/7 to ensure a speedy fix. This is a universal problem with extensions targeting website DOM's, but worse if you have an SaaS product that has an SLA.

<comment><USER6> Founder of Streak here (we make the InboxSDK) - this is one area where we take a slightly different approach than Gmail.js.

We host our SDK and you remotely load it at runtime. The benefit is that we detect breakages due to gmail and automatically update the SDK. Your users just need to refresh gmail to load your extension and the latest SDK which is compatible with any changes Gmail makes.

<comment><USER7> InboxSDK looks awesome. I took a look at it several months ago, and we want to build something on GMail. We're a little concerned about the licensing and availability of the library, though. Is it possible that a month from now you decide that we're competing with something you want to do, and stop serving the library for our app? What would be our recourse then?

<comment><USER6> Our terms of service are listed at [https://www.inboxsdk.com/terms](https://www.inboxsdk.com/terms). Specifically we will notify registered developers whenever we change our terms and you can use the old terms for some period of time.

In general though, we treat the SDK as its own product and have several competitors to Streak using it. We have millions of end users using apps built on the SDK from major companies (Dropbox, Hubspot, etc) so we're pretty careful with our terms.

The main goal is to retain the ability to maintain compatibility between different extensions being run by the same user and being able to respond quickly to changes in Gmail.

</comment></comment></comment></comment></comment></comment><comment><USER8> This is a great library. Standardizes most of DOM manipulation/action triggering for everything Gmail does. Although Gmail's DOM changes sometimes like seibelj pointed out, you'll have the same issue if you roll your own implementation, so, for me, this is preferable.

If I remember right, it underwent a major rewrite a year or so ago, after which is has been very solid.

<comment><USER9> Creator of gmail.js here - thanks Nathan! I started working on this almost 3 years ago for a personal project. At that time there weren't many libraries available to work on top of gmail so I decided to compile all the helper functions into a standalone library hoping that after it goes on github, others might contribute.

After I did a Show HN in late 2013 a lot of people expressed interest in using this and ever since then, gmail.js has been used by a lot of individuals and startups. I'm really happy that people still frequently contribute to the library by adding features and/or reporting bugs and it has definitely gotten stronger and more stable over the past year (a very special thanks to Brent Kelly)

As a funny observation, the public sentiment towards gmail's DOM still remains the same as it was 3-4 years ago, and while I agree that it changes quite often, I do believe that the severity of those changes is heavily overstated. The disadvantage of an abstraction layer like gmail.js is that you always have to be on top of the DOM, but gmail.js is at a place where enough people are using it that if some major change occurs to the gmail UI, it'll be reported a lot faster because there is now a community using the library. In the past 3.5 years, only a single DOM change on gmail (about 2 weeks ago) has made a breaking change that affected all users from this library.

The whole thing is intentionally designed to be a single file where majority of the functions are standalone so if something goes wrong, anyone can easily understand how it works! That being said, a lot of the focus of this library is to abstract network events so developers making extensions on top of gmail can fire off events when a gmail user gets a new email, sends email, deletes etc. Those things rely very little on the DOM.

And as always, feedback and bugs welcomed :-)

</comment></comment><comment><USER10> You may be interested to know Google has an official REST API and associated Javascript library. [https://developers.google.com/gmail/api/](https://developers.google.com/gmail/api/) [https://developers.google.com/gmail/api/quickstart/js](https://developers.google.com/gmail/api/quickstart/js)

</comment><comment><USER11> InboxSDK (from Streak) is the best API to use for Gmail.

<comment><USER12> They have slightly different usecases. I used them both extensively and one is intended for adding a sidebar style chrome extension ala Streak, while Gmail.js is a simpler event based system.

I personally found both to be lacking in different areas, too bad they weren't merged together to cover a broader base.

<comment><USER6> Founder of Streak here (we make the InboxSDK). Would love to know which use cases we don't cover but do agree, both libraries were targeted at different layers.

Gmail.js lets you avoid doibng the DOM hacking yourself but is still fairly low level. The InboxSDK was targeted for people who are building apps inside of Gmail. We assume multiple extensions to be running and make sure they play nice, we handle auto updates to handle changes in Gmail and we try to guide developers to using standard Gmail UI styles. We have inbox support coming soon which will let you write your app once and have it work in Gmail and Inbox.

<comment><USER12> I had more clarity in my thoughts regarding this but it's been a year since I worked on the chrome extension and the startup folded. Thanks for your contributions to OSS.

</comment></comment></comment></comment><comment><USER13> Can the title be changed to indicate that this is only for userscripts and/or browser add-ons/extensions?

</comment><comment><USER14> Seems this is mainly meant for writing Chrome extensions.

</comment><comment><USER15> Now for somebody to use this to write a Gmail extension that removes the hundred-levels-deep signature and reply chains that Outlook appends (and which evades Gmail's currently reply-collapsing).

</comment><comment><USER16> I want to thank the author. Like many users, to repeat this project entirely on my own would be a nightmare. The GMail HTML source produced from the server is "minified". Random, meaningless class and id names. Author took on the burden and made Gmail more accessible for browser extension/add-on. I implemented a FireFox addon (for accessibility purpose for my senior thesis) using Gmail.js. Furthermore, the code is very readable and the API is extremely intuitive and well-designed. Thank you!

<comment><USER9> Thank you for the kind words!

</comment></comment><comment><USER17> I skimmed the README, but it wasn't clear to me what this does that the official Gmail API doesn't do...

</comment><comment><USER18> Why are the advantages of using this API over other tools like Google App Script.

<comment><USER9> This is primarily designed to make chrome extensions on top of gmail

</comment></comment><comment><USER19> Would this not be against the terms of service :)</comment>


NASA planning document may offer clues to changes in Artemis program - <AUTHOR> https://arstechnica.com/science/2020/02/nasa-planning-document-may-offer-clues-to-changes-in-artemis-program/ <comment><USER2> Great article. Thanks for sharing.</comment>