Chicago Is America's Last Remaining Affordable Skyscraper City - <AUTHOR> http://www.chicagobusiness.com/article/20180711/OPINION/180719978/to-chicago-with-love-emanuel-is-a-housing-policy-pioneer <comment><USER3> Chicago is the magic kingdom of all cities. The lakefront, transportation systems, forest preserves, museums, restaurants, theater, activities, and good old Midwestern common sense provide a combination of cosmopolitan and blue collar flavor.

I can't count how many people have moved here and commented that they were shocked how easygoing people were and making long-lasting friendships was easier than they'd ever imagined.

Even so, the Bears still suck. Go Pack Go!

<comment><USER4> You're making me miss my hometown. Everything there is just amazing, I love the city and the people in it. The people are so kind and the transportation is stellar, and you can listen to Fred & Angi on your way to work.

<comment><USER5> Hey, I can help with your home sickness.

It's brutal winter here for 8 months followed by a manic, hot four months of summer. No spring or fall. It takes two hours to get to anything that could reasonably be called nature. The people are great, but their main form of socializing is heavy drinking. It's cold? Let's drink about it. It's hot? Let's drink about it.

It's great, but no city is perfect.

<comment><USER3> The cold keeps bug size small, we don't have snakes or deadly spiders, and the change of seasons invigorates the mind.

<comment><USER6> We don't have poisonous snakes or spiders where I live, and the bugs are few despite rarely getting below freezing. But it rains all the time in Seattle. And the volcanoes; third one that's blown up this week. Stay away, we have other things that will kill you beside bugs and reptiles.

</comment></comment></comment></comment></comment><comment><USER7> I'm going to dispute this claim. Pittsburgh, PA has skyscrapers[1], defined as any building with or over 40 floors, and is more affordable then Chicago[2]. In fact Atlanta, GA also fits in this category as well.

[1] [https://en.wikipedia.org/wiki/List_of_tallest_buildings_in_P...](https://en.wikipedia.org/wiki/List_of_tallest_buildings_in_Pittsburgh)

[2] [https://www.numbeo.com/cost-of- living/compare_cities.jsp?cou...](https://www.numbeo.com/cost-of- living/compare_cities.jsp?country1=United+States&country2=United+States&city1=Chicago%2C+IL&city2=Pittsburgh%2C+PA&tracking=getDispatchComparison)

<comment><USER8> According to your source (Wikipedia), Chicago has around 78 buildings over 550 feet. Pittsburgh has 19 and Atlanta has 16.

So the article is right and Chicago is still in a league of its own in that regard.

<comment><USER9> The article specifically mentions Boston, San Francisco, Washington and New York as other skyscraper cities. I think their "definition" of skyscraper city is a more about density than just the number of 40+ story buildings.

I think possibly the only legit "skyscraper city" that has been left out according to the article's "definition" would be Philadelphia which is affordable still.

<comment><USER10> Wikipedia doesn't show anything in Washington, DC, higher than 15 stories, for what that's worth. I certainly have never thought of it as a "skyscraper city".

<comment><USER11> The urban area of DC is much larger than literal Washington DC and many places there that are technically suburbs certainly _do_ have skyscrapers. For example, "Crystal City", which is technically in Virginia but functionally part of DC.

[https://en.wikipedia.org/wiki/Crystal_City,_Arlington,_Virgi...](https://en.wikipedia.org/wiki/Crystal_City,_Arlington,_Virginia)

</comment></comment></comment></comment></comment><comment><USER12> I've lived in Chicago for nearly 10 years and will continue preaching its advantages to anyone who will listen.

Crime isn't as big a problem as people think it is (it's isolated to a few long-disadvantaged neighborhoods), it's affordable, cars are optional, and we have two airports to escape the winter weather.

<comment><USER13> I tried living in Chicago without a car… I wouldn't say it is as optional as you suggest.

<comment><USER14> > I tried living in Chicago without a car

Really depends on where you live and want to be. This is true everywhere (NYC, SF, Seattle, etc.)

<comment><USER13> I would definitely not put NYC and Chicago in the same category for no-car friendliness.

I spent many years in NYC and only knew 1 person who owned a car.

By contrast, when I lived in Chicago, _I_ was the only person _without_ a car.

</comment></comment></comment></comment><comment><USER15> I have only two problems with Chicago:

1\. Winter

2\. It's in Illinois. Which will take a century to dig itself out of a century of being the most corrupt state government in the US.

<comment><USER16> Lake effects winters are nothing to scoff at. Cold temperatures, wind, and excessive snow/freezing rain make for some really miserable times.

<comment><USER17> Sitting here in the middle of a heatwave, I have to ask: are they really that bad when you can just add warm-weather clothing? Or when even just moving will generate some heat? I've heard in Wisconsin you have to breathe a certain way to warm the air before it gets to your lungs, so maybe that's the problem? I've only lived in hot climates, so I have no concept of true cold. But with how summers have been getting hotter and hotter lately, I'm tempted to make a change.

<comment><USER18> Overall it's really not as bad as people make it out to be. Of course I've lived here all my life. There are periodic cold snaps where it gets way below freezing, but typically it is in the 20's (F). The trick for winter is to embrace it, and wear appropriate clothing. For snow removal you may need heavy machinery (I just use a sleigh shovel, works great). For clothing, a good flannel shirt with a vest jacket and hat goes a long way (keeps you from getting too warm, and your body acclimates to the temps).

<comment><USER19> I lived in Chicago for several years and while the temperature and snow is a lot more extreme in Chicago the winter is a hell of a lot more tolerable than in Sweden where I live now. This is because where I live in Sweden is moderate temperature wise compared to Chicago but the sun basically just never comes out and you have constant cold rain for about 7 months. Chicago will definitely see enough sunshine during the winter to keep you in reasonably good spirits.

Also you forgot to mention for clothing to wear something under your jeans (my trick was sweatpants) to protect yourself from that Chicago wind whipping through them :)

</comment></comment></comment></comment></comment><comment><USER20> I like the feel of Chicago, but while living there, I couldn't stand the aura of political irresponsibility. And the city is functionally bankrupt, even if they can't declare it as a matter of law.

Nobody should move to a city that sells off its capital to pay for operating expenses. Nobody who lives there should support any incumbent officer that went along with it.

Touting affordability in an artificially restricted, un-enumerated class sounds like starving vampires desperately advertising for new blood. Chicago's nice, but it is surrounded by cities that are more attractive in terms of fiscal stability: Minneapolis/St. Paul, Madison, Milwaukee, St. Louis, Indianapolis. And Toronto, Detroit, Cleveland, Columbus, Cincinnati, Louisville, and Pittsburgh are all in the same metropolitan aggregate, with similar cultures.

I really want Chicago to be better than it is. I'm not sure that Illinois can make it in the long run without amending the home rule exceptions for Chicago out of its constitution. It gave the Chicago Political Machine (read _Boss_ by Mike Royko, if you haven't already) its own playground and has driven a gigantic wedge between the city and the entire rest of the state.

</comment><comment><USER21> I love Chicago. I've visited most of the major cities in the U.S. and Chicago is the only one that seems comparable to NYC's historic, big city feel.

<comment><USER9> I've only visited a couple times but I thought if it wasn't for the brutal winters, it might be the best city in the US for me.

</comment></comment><comment><USER22> I've never heard of this publication, I'm definitely going to pay them $5/mo to read this one article.

Wait, no I'm not: [http://archive.is/pLqLI](http://archive.is/pLqLI)

<comment><USER23> Title probably should also read, "To Chicago with love: Emanuel is a housing policy pioneer".

Edit: ... versus the current, "Chicago Is America's Last Remaining Affordable Skyscraper City"

<comment><USER9> I think they are A/Bing different headlines.

</comment></comment></comment><comment><USER24> Chicago's a great town, but honestly the taxes are a killer. I grew up in the area and have a great deal of love for the place. Almost moved back after a hiatus, until I calculated the percentage of my mortgage I would have to toss away just to own a home.

Prices are often quite affordable but taxes can add 30-50% on top of the monthlies which makes it quite hard to stomach. If you add in the fact that taxes at the state level pretty much _have_ to increase I'm not sure the affordability argument holds up in the medium term. I hope, however, that they can start to fix some of those underlying issues.

</comment><comment><USER25> I've been saying this for _years_.

The math is pretty straightforward: as cost of living skyrockets in most cities, any city that has the infrastructure and housing to accommodate large numbers of people will win the race.

So for example, at this point San Francisco and the Bay Area are in fact losing the race even though surrounding economy is booming; all because housing is lacking and incredibly unaffordable and there's zero political will to change it.

<comment><USER9> This is the opposite of what is happening if you look at the population changes of their respective MSAs. Chicago's is barely growing and SF added an estimated 9% to the population from 2010-2017. [0]

[0] [https://en.wikipedia.org/wiki/List_of_metropolitan_statistic...](https://en.wikipedia.org/wiki/List_of_metropolitan_statistical_areas)

<comment><USER25> Growth will stagnant once the area reaches capacity. There is no political will to relax zoning to increase housing inventory to meet the new demand as existing residents are becoming very rich from their increased property values.

</comment></comment></comment><comment><USER26> I'm not entirely sure I follow the logical argument: regulation is relaxed along transit arteries, allowing developers to build and sell more units there at market rates, thereby keeping the market prices in check; that's great.

But I would assume someone capable of paying market rates, typically still owns a car. That car still needs a parking space, so even if the owner does not use it for his daily commute, the presence of the car still has an impact. I would furthermore assert that many if not most middle class citizens living alongside good transit do not actually use it for work, because of the complexity and inconvenience. It certainly seems that way and the article puts forward no hard numbers.

So there should be a marginal decongestant effect from encouraging high density in those areas, but the same rules could be applied everywhere for an even stronger effect on market prices. The task of the mayor then becomes to get transit to those newly developed areas and keep congestion down; not to coax developers to build where transit is - they will do that by themselves simply for the market premium transit options afford to their investments.

<comment><USER27> Chicago is definitely enough of a 'big city' that people choose to forego car ownership.

I work in an office of developers, and people only tend to get a car once they have kids, and then they only have one car for the family.

<comment><USER28> I own two parking spaces in a private garage on the edge of downtown - <USER2> one car and rent the other space. 5 years ago, I could rent it for $300 per month with a waiting list of people that want it. Today I am renting it for $200 per month and it would take a week or so to find a new tenant. In that time, my neighborhood has grown considerably and has become much more expensive.

Multiple car ownership (or ownership at all) just isn't that desirable any more and Chicago's relaxation of minimum parking requirements are very much market-driven. Parking costs a lot of money to build and takes up a lot of space in a building. Because there is nothing preventing a developer from building more parking than required, he or she has the freedom to match market demand.

There is a 50-floor, ~500-unit apartment building under construction in my neighborhood that, due to its proximity to a train station, was required to build exactly 0 parking spaces. The developer chose to build around 75.

</comment></comment></comment><comment><USER29> Don't worry, the government is hard at work putting a stop to affordability: [http://www.chicagotribune.com/classified/realestate/ct-re- re...](http://www.chicagotribune.com/classified/realestate/ct-re-rent-control- in-illinois-20180125-story.html).

<comment><USER30> > In 2017, Chicago renters making the median income spent more than half their > workdays earning enough money to cover the rent, according to an analysis > from HotPads, an apartment search platform.

Seems more like living in Chicago is actually already unaffordable for most of its residents, contrary to TFA.

</comment></comment><comment><USER31> Anything in that article address the highest effective tax rate in the nation(and it's not close)?

</comment><comment><USER32> Raised in Florida, live in Chicago (old town) with kids. Walk to work (and drop off kids at school); 1.75 mile walk. Walk all year. Weather is fine above -15, which it only hits a couple times every couple of year. No special breathing required, though you need to bundle up. Rain is the worst to walk in. We have a car, but used mostly for golf.

I think with restaurants, art scene, theater, and parks, it beats other affordable cities (not sf, nyc) in my mind. But it doesn't have the outdoors fun of the West. If we leave, we may go very rural. Taxes and financial trouble do make me a little nervous, as a property owner.

</comment><comment><USER33> Those property taxes may well be driving affordability.

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

</comment><comment><USER34> If they land HQ2, that will be the end of that.

</comment><comment><USER35> There's another factor keeping housing prices down in Chicago, relative to Boston, New York, etc.:

[http://www.chicagotribune.com/news/ct-met-chicago- population...](http://www.chicagotribune.com/news/ct-met-chicago-population- census-figures-20180523-story.html)

</comment><comment><USER36> Rents are always going to be high for any dense city, but lighter touch regulations can make it less sprawled and car-centric. The transit-oriented development policies mentioned do just that.

Donald Shoup is a transit scholar who has shown in detail the distorting effects of mandatory minimum parking requirements.

</comment><comment><USER37> What about Philadelphia? It has one of tallest skyscrapers in the US. Good public transport and is pretty affordable even compared to Chicago.

</comment><comment><USER38> Austin has SkyScrapers... It's vastly more affordable than Chicago and has superior weather...

</comment><comment><USER39> Detroit? Cleveland?

<comment><USER40> I am a big fan of Cleveland, but it isn't a "skyscraper city." There are a number of mid-sized buildings and really nice downtown, but it hasn't grown vertically like some other cities.

</comment></comment><comment><USER9> To avoid the paywall: [https://outline.com/tRbqhU](https://outline.com/tRbqhU)

</comment><comment><USER41> Call me crazy but I think a publication named "Chicago Business" would probably have a conflict of interest here.

Edit: Nevermind, it's an opinion piece, and behind a paywall to boot.

<comment><USER42> But still, they may be biased. Chicago is affordable compared to many other big cities, but getting from there to "last remaining" probably requires a careful choice in the cutoff for what you'd call a "skyscraper city".

About an hour and a half north you'll find another American city that has skyscrapers, and also has a cost of living that's somewhere between half and 3/4 of Chicago's.

<comment><USER43> > "About an hour and a half north you'll find another American city that has > skyscrapers"

If Milwaukee counts as a "skyscraper city", then practically every city in the US counts, and the term becomes mostly meaningless.

<comment><USER44> It really should be "city livable without a car" because that is what really separates Chicago from all of the other affordable midwestern cities.

<comment> dan-0 This is pretty much it. I haven't lived in Chicago, but have a lot of friends from there and did some research while on my last jobs search. Putting affordability next to availability of public transportation, Chicago is probably the best mix I found. Unfortunately, as others had mentioned, the job market couldn't make it worth it for me.

<comment><USER41> I've heard there are a lot of HFT/fintech firms in the Chicago area, which if you've got the math/stats chops for it blows every non-FANG job out of the water in terms of earnings potential.

</comment></comment></comment></comment></comment></comment><comment><USER45> Only if you mean "Skyscraper city with lower prices because of higher crime".

<comment><USER12> I would encourage you to venture over to Wikipedia and sort the violent crime rates per 100,000 people[1]. Chicago is 28th, behind Oakland, Houston, Atlanta, and Miami.

[1] [https://en.wikipedia.org/wiki/List_of_United_States_cities_b...](https://en.wikipedia.org/wiki/List_of_United_States_cities_by_crime_rate)

<comment><USER9> It is #8 on that list if you sort by homicide rate though. I'm not saying that makes OP's comment accurate as they did just say "higher crime" and not specifically homicide rate. But I do believe that blending murder rates with property crime rates gets a little muddy. The only "skyscraper city" that the article mentions that ranks higher in homicide rate is Washington D.C.</comment></comment></comment>


Gmail Redesign Concept - <AUTHOR> https://www.behance.net/gallery/Gmail-Redesign-Concept/14412073? <comment><USER2> The initial screenshots of the redesign really turned me off -- I'm not sure why they were presented in the least-flattering orientation (portrait). It's really inconvenient to have the main content (the e-mail itself) relegated to less than 50% of the actual screen.</comment>


AWDwR3 Beta 7 - <AUTHOR> http://www.intertwingly.net/blog/2008/12/26/AWDwR3-Beta-7 <comment><AUTHOR> I thought this was interesting because it shows how quickly Rails hurtles forward.</comment>


Kala – A Modern Mesos Job Scheduler - <AUTHOR> https://github.com/ajvb/kala

<comment><USER2> The title is confusing. This does not run on Mesos.

<comment><AUTHOR> That's my bad- I didn't look closely enough and now I cannot edit.

I resubmitted it with an appropriate title here: [https://news.ycombinator.com/item?id=10046164](https://news.ycombinator.com/item?id=10046164)</comment></comment>


Ask HN: What are the tools to make a quick WebApp MVP? - <AUTHOR> I have been tasked with making a simple webapp with following requirements.
1. Login system ( multiple users ) 2. Simple image upload with some related data. 3. Some tables to show uploaded data with images. 4. Some business logic on top of uploaded data.
I have been out of touch from webapp development for the past 3 years. What are the easy to learn tools to quickly build this MVP in a weeks time. I have good knowledge of JS/TS, Java, C#, Jquery and React.
Is there a good pluggable framework that comes with all these basic things so that I can quickly build up something ?
I was thinking of using React + Bootstrap for frontend, some node.js framework for backend ( probably will use passport.js for auth ) <comment><USER2> The spec is super basic, so I would do the below in a weekend (for an MVP):

Frontend:

* Use a pre-built React theme (maybe MaterialUI since it has a basic login page already). Make a few tweaks where required. This will probably take 5ish hours depending on the total number of pages and unique components needed.

* Deploy the frontend to AWS Amplify. This will take less than an hour (unless I've screwed something).

Backend:

* Fastest option: If I'm under a time crunch, I'd go with Django REST. If you've set this up before, you could have this configured in less than 2 hours with all relevant endpoints (maybe even less). I'd probably mock a few routes with fake data in place of business logic (if appropriate). Deploy to either Lightsail or Heroku.

* Personal preference: Use the Serverless Framework (with Node.js) to create the required endpoints, handle auth, media storage, etc. This will take a bit longer than Django REST, but the deployment process will be a bit faster. Maybe 3-5 hours (if I'm using mock business logic).

DB:

* Spin up some kind of SQL DB on AWS RDS (probably PG).

</comment><comment><USER3> That's the million dollar question. There isn't one framework that is going to be ideal for every application. It seems like you already have a good answer for yourself.</comment>


Ethereum's $150M DAO Opens as Researchers Call for a Halt - <AUTHOR> http://spectrum.ieee.org/tech-talk/computing/networks/ethereums-150-million-dollar-dao-opens-for-business-just-as-researchers-call-for-a-moratorium <comment><USER3> Discussion around the issues outlined in the report have already begun (before the report was published) in the DAO forums. It's not unexpected that there will be problems. This has never been done before. But the fact that this report exists, the problems are being discussed, and there are already talks of proposals for resolving some of the issues is a good sign that the DAO is working as intended... The community discovers problems, the community fixes problems.

Compare this to a traditional investment fund where you hand over your money to a private organization with opaque investment strategies, business operations, and technology. If I invest in a Vanguard or Fidelity fund, they only report back what is required of them by regulators. They take little to no input from investors, and may be running their business on decades old technology filled with flaws and bugs.

I view the DAO as an open source investment fund in the same spirit as "The Cathedral and The Bazaar". It's not perfect, it's messy, some people are more influential than others, there's a lot of noise, and it could collapse on itself at any time. But everyone gets to participate (for better or worse). Lots of eyeballs are constantly watching, and plenty of concerns will be voiced.

I know the HN crowd is a skeptical one, but try to keep an open mind. This could grow into something great. And if it doesn't... hey, it's not your money, so don't sweat it.

<comment><USER4> The "investors" risk losing all their money, and the curators and contractors risk going to prison because they are conducting an illegal securities offering with no valid exemption.

<comment><USER5> In a way, this is like Uber or Airbnb, you can't ask permission or you'd be out of business before you managed to change the laws. Asking forgiveness is not only easier than asking permission, sometimes it's the only viable route.

They may lose money, they may make some. But it's a grand experiment of a kind that's never been tried before and I'm curious to see the results.

<comment><USER4> Uber runs up against municipal taxi regulators. The DAO runs up against the SEC, DOJ, and state securities regulators, just to focus on the US cops. These people are a bit more serious than the City of Austin transit authority. As we've already seen in multiple cases, e.g., SatoshiDice, US regulators are aware of efforts to use profit-sharing contracts to raise funds, and view this (correctly) as a securities offering that should be registered unless there's a valid exemption. I was on a train some months ago and saw Preet Bharara reading the WSJ. At least I'm pretty sure it was him. How long do you think before a failed DAO crowdfunding ends up on the WSJ front page? If investors lose $100mm you can bet it will get that kind of publicity. Then it's just a matter of identifying the ideal defendant for symbolic punishment. If I were involved in slock.it, I would be careful not to travel through the US.

<comment><USER6> The DAO exists outside of the laws of the United States. If the US curators are arrested, they will be replaced with non-US residents.

This is the fundamental premise of decentralized systems. They are resilient to the interventions of governments. Bitcoin is definitely illegal in many places in the world, and occupies something of a gray area in the US. Yet, it operates just fine.

<comment><USER7> You've obviously never heard of extradition have you?

<comment><USER6> No country is going to extradite one of its own citizens for selling a financial product that doesn't happen to be approved by the US SEC and isn't a ponzi scheme / scam (the DAO may be a lot of things, but it is likely not an explicit confidence scheme). Not to mention the fact that there are plenty of countries who won't extradite to the US for _any_ reason.

<comment><USER4> But I am speaking exactly of the scenario where a dao project curator/contractor is perpetrating a financial crime. In that case, most countries would in fact extradite. If that's even necessary. I mention US laws not b/c I'm in favor of US imperialism but b/c I am familiar with these laws. I'm sure that there are other relevant jurisdictions that would frown upon financial crimes regardless of new age window dressing.

<comment><USER6> I don't think it's clear that the DAO represents a 'financial crime'. Especially not on the part of the curators. It is an unregulated, unlicensed investment vehicle, but it's certainly not predatory, and especially not on the part of the curators (who are the only arrestable individuals).

<comment><USER4> The problem as I see it is that a curator could be affiliated with a contractor, and the same person could also hold a large stake of tokens. At some point the dao is not truly decentralized, and the parties with the power to influence voting decisions for their own benefit do not disclose this conflict.

<comment><USER6> Ya that's certainly a possibility. Of course, in such a situation, the curator could be fired. However, you face the same issue in any publicly traded corporation, but with even less recourse for the shareholders.

Don't get me wrong, even though i'm invested in the DAO a bit, I fully expect there will be serious disasters like this along the way. I'm not blind to how overwhelmingly likely it is that at least some people will run off with at least some of the money they get. But I do think these issues will get shaken out over time. And then we'll simply be left with: is it a good idea to let the wisdom of crowds make investment decisions? (also, likely the answer here is an emphatic: no, but it'll be interesting to find out).

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> I have to say that as far as flawed systems of incentives go, the one outlined in the article seems pretty tame. I feel like it is something people don't understand in general and something that is often manipulated, but simply not paying attention roughly amounting to an implicit 'yes' doesn't strike me as a fatal flaw.

That being said I think ethereum is very interesting but enormously risky (even more so than some other crypto-currencies). I think experiments like this are fantastic, but starting with 150 million is not. It would be much better in my opinion if it started with 1000 dollars and tried to grow from there gradually.

As far as incentives go, 150 million is a huge incentive to play fast, loose, and dirty by any means necessary to get balance into keys you control and cash out. From what I've seen of kickstarter, the internet is WAY less skeptical than they should be and it seems everyone needs to learn the lessons of their grandparents on how not to lose money to false promises.

</comment><comment><USER9> DAO's claim of being "jurisdictionless" \-- and thus not subject to any state or federal laws governing the rights and duties of business organizations, fiduciaries and beneficiaries or creditors and debtors -- then its equity owners (i.e., those who spent Ether in exchange for proportional ownership tokens) wouldn't enjoy the investor liability limitations and other protections provided by those laws.

As a result those equity owners could be on the hook for claims and judgments against the DAO for sums in excess of the value of the Ether they've paid in or the tokens they've received.

</comment><comment><USER10> Does the governance structure of the DAO support permanently shutting itself down? What system of checks and balances exists to govern its behavior if things get really bad?

<comment><USER11> It allows a way to 'split' the DAO, and also take your 'share' of what's left and just leave.

For instance, you are already scared and don't want to deal with this anymore, you can just take all the ETH that you put into this and forget the whole thing happened.

However, there are some issues with timing, and other attack vectors/flaws in this mechanism outlined in the research being referred to in the article.

Here's the original research paper. It's a very good read: [https://docs.google.com/document/d/10kTyCmGPhvZy94F7VWyS- dQ4...](https://docs.google.com/document/d/10kTyCmGPhvZy94F7VWyS- dQ4lsBacR2dUgGTtV98C40/mobilebasic)

<comment><USER12> I believe you'd have to wait like 21 days for your ether to clear so that you're _completely_ out. But I am not sure.

<comment><USER13> It's 48 days. [https://daowiki.atlassian.net/wiki/display/DAO/Step-by- Step%...](https://daowiki.atlassian.net/wiki/display/DAO/Step-by- Step%3A+Splitting+the+DAO)

</comment></comment></comment></comment><comment><USER7> This ultimately ends with Vitalik receiving a subpoena from the feds on behalf of a U.S. based investor who loses and gets pissed. Then he either complies and builds a backdoor for Ethereum, or he gets banned from the U.S. has trouble going back to Russia because they want the same thing. So he will ultimately become like the Bobby Fischer of crypto in effort to not give government backdoor access to Ethereum. Will it work? Tune in next week!

<comment><USER14> Ethereum is defined by a 32-page spec and has seven independent implementations so far, each in a different language, with only one produced by the organization that Vitalik leads. It might be a bit challenging introducing a back door.

</comment></comment><comment><USER15> The no vote bias looks like a serious flaw in the DAO. As the authors say, it is safe for an informed investor to split than to vote "no" on a proposal (for reference, users who split are still entitled to the proceeds of any proposal they funded so far). So passive investors would either be in danger of an attack from a bad proposal, or would find a way to automatically split if the investor wasn't available, defeating the purpose of the DAO.

Put another way, the stock market rewards passive investors with exactly the same rewards as active investors (which has its own problems - <USER2> control over management is notoriously lax), but the DAO goes to the opposite extreme.

I personally think that calling for a moratorium is presumptuous - I'm certainly glad there was no moratorium of the stock market when it was introduced because some economists identified some real flaws. But it is a well researched critique.

<comment><USER8> But wouldn't that end up being all or nothing? If there were many investments going on and someone splits, do they retain all the previous investments? I suppose the answer is yes, but then are the same curators working for them?

</comment></comment><comment><USER16> I would be interested to know how much the creators of the DAO have studied the history of democracy.

<comment><USER3> I can't speak for the individual creators, but the 'tyranny of the majority' has been discussed at length and is the basis for the 51% attack mitigation. DAO and Ethereum enthusiasts also seem to enjoy discussing 'delegative democracy' (or 'liquid democracy') at length.

</comment></comment><comment><USER17> Could ethereum be used to create verifiable transparency in investment funds? Something that would prevent fraud, such as the Bernie Madoff ponzie scheme, from occurring.

<comment><USER18> Yes, and kind of. You'd probably avoid a Madoff-like kind of scheme, but scammer will always exist and they'll find new ways.

</comment></comment><comment><USER19> So the same people behind the DAO are behind Slock? That is, the people behind the exchange are also pushing the first offering?

Uh oh.

</comment><comment><USER20> [https://boards.4chan.org/biz/thread/1271161/wtf](https://boards.4chan.org/biz/thread/1271161/wtf)

Transcript: [http://pastebin.com/raw/ATJSADgr](http://pastebin.com/raw/ATJSADgr)

One could argue that the thread consists of nothing but trolling, and that no one could possibly be so stupid as to invest their entire life savings, take out loans, and attempt to use credit cards to buy coins. Unfortunately, I've seen it happen.

The conversations on that thread are almost exactly the same as they were several years ago. "Hold. Things will get better, you simply must hold." "But I lost half my life savings..."

<comment><USER8> Everyone learns their lesson at some price, but for some it is higher than others.

</comment></comment><comment><USER21> Wake me up when the DAO does something interesting

<comment><USER22> Haven't you heard they are going to destroy airbndb because they invented a self install lock app, people will be rushing to the stores to install these locks because it solves so many lock related issues, it's more expesive then what's already on the market, it's a great signal to local regulations that your illegally renting your house, and as a bonus they do zero marketing, it's all win.

<comment><USER23> > _and as a bonus they do zero marketing_

The _locks_ or the _company_ does zero marketing?

Also, I went to their page:

[https://slock.it/](https://slock.it/)

First thought: "OMG this looks like just another bullshit startup". Pages looking like that are a pretty reliable signal of very low value to presentation ratio...

</comment></comment></comment><comment><USER24> I read the article as saying "passive investors might get screwed". So this discussion should be healthy for the DAO if it gets these passive folks to become more active. Creating the future will require some work.

<comment><USER25> No, it's worse than that. Everyone (with money in the DAO) may be screwed.

</comment></comment><comment><USER26> What advantages does the DAO offer over a regular fund for investors?

It looks like you get less regulartion and legal weight if things go wrong...am I missing something?

<comment><USER27> Its transparent and everyone can vote. So its like being able to read over all contracts and investment strategies that a fund manager is considering ahead of time and voting whether you want to be part of it. Then you can see every single transaction the 'fund manager' makes.

If you understand how Wall St. works then the question becomes 'why does anyone use regular funds'.

<comment><USER28> People use regular funds because they want their capital to grow without having to think or work.

</comment></comment></comment><comment><USER13> Slock has responded to this by creating a proposal to fix these security issues: [https://blog.slock.it/slock-it-security-proposal-1-is-now- ve...](https://blog.slock.it/slock-it-security-proposal-1-is-now-verified-we- look-forward-to-you-guys-being-able-to-vote-on-it-d20b3a2e7d9c#.4ng99aiix)

</comment><comment><USER29> I spent a few days in the DAO chat room discussing a potential proposal.

The general consensus among the developers was that the DAO isn't ready for a real business, and any business owner intending to use the DAO would face real potential risks for loss of funds or worse.

Still, it's a really interesting idea. Wish it was ready for prime-time.

<comment><USER27> That's just the difference between honest problem solving people and the average Wall St. sales guy. One tells you about the risks, the other doesn't really understand the risks or care, he is just trying to get more of your money to play with.

</comment></comment><comment><USER30> I bet you an Ether it's also highly vulnerable to polarized voting.

</comment><comment><USER31> >"In general what you really want in any kind of a voting-governed structure like the DAO is you want the voters to vote their true preferences. You want them voting in line with what they want to see happen," says Sirer. In other words, if a token-holder thinks that the proposal will yeild[sic] profits and increase the net worth of the DAO, he should vote yes. If not, he should vote no. But that's not what we're likely to see, according to the analysis.

Sorry, but I had to stop reading there. The sentences do not logically follow each other. The other words used by the author are not equivalent to what Sure was quoted as saying. In fact, the author's assertion removes all autonomy from a token holder and reduces them to a revenue maximizing rubber stamp.

Edit: if you can't deal (or even read), pls downmod

<comment><USER32> I suppose the statements agree if all the voter is interested in is profit.

<comment><USER31> It removes all autonomy from the voter being able to express their true preferences as the author has subjugated them to profit.

<comment><USER33> You are missing the point - whether their motivation is purely profit, or altruistic, or whatever - if they do not want to fund a project, they have an incentive not to vote 'No' against it because as soon as they do they can no longer remove their money from the DAO, and have committed to funding the project if it passes.

<comment><USER31> Maybe you are missing the point?

The author conflates an (presumably autonomous) individual's true preference with necessarily increasing the net worth of the DAO. There is no a priori reason to believe that.

Edit: you could, like, you know, post a reason to believe the equivalency.

<comment><USER34> I _think_ .. I believe the point of the featured article was the example:

(given the voter is mainly interested in profit, then) IF a voter thinks that the proposal will yield profits and increase the net worth of DAO: vote yes

but only if their interests align that way. if they don't, obviously their decision will be based on other factors.

the point being, it should be straightforward and obvious to vote yes or no, depending on whether the result of a majority-vote yes or no, would align with your particular interests yes or no.

while that statement seems almost tautological, it's a very desirable requirement for voting systems. I'm not 100% sure on the terminology (it's been a while since I studied it) but it might be called "monotonicity" or something.

the point of the article was that in some cases it would be advantageous to do something different instead of voting yes or no along with your particular interests. in this case that it would be better to split than to vote no, in many cases. that demonstrates the (mathematical/logical) assumption of monotonicity (if it was called that) is violated.

but you only need one example to demonstrate that. so it doesn't quite matter that this is not everybody's incentive, as long as it's a reasonable incentive that people may choose.

I admit the added bit about "increasing the net worth of DAO" raised my eyebrows as well. I just assumed many profit-interests would align with the net worth of DAO, and that it'd be healthy for the system or something (I don't know).

</comment></comment></comment></comment></comment></comment><comment><USER32> I love the idea of a corporation ran completely by rules and regulations. But the blockchain sours it for me. I just do not believe that operates in any way like a currency must.

<comment><USER35> In this case, the blockchain isn't acting like a currency, it's acting like a impartial applyer of decisions made by people..

<comment><USER32> Interesting, got a link?

<comment><USER14> Here's the main site, link to the whitepaper at the bottom of this page: [https://daohub.org/about.html](https://daohub.org/about.html)</comment></comment></comment></comment>


Total Surveillance Is Not What America Signed Up For - <AUTHOR> https://www.nytimes.com/interactive/2019/12/21/opinion/location-data-privacy-rights.html <comment><USER2> If NYT wanted to actually make a difference they'd remove this (or at least after a couple days) from paywall. They are crippling their own reach.</comment>


Ask HN: How do I earn money online just to buy myself a gaming computer? - <AUTHOR>

I'm 16, and at this place, there's no way I can earn myself enough bucks by doing odd jobs. So, how do I go about earning enough money ($300?) just to buy myself a gaming computer, from where I can continue on myself. I tried youtube partner, but I don't have any original content to submit (neither I can make one because I don't have a camera). I tried to find some freelance work but couldn't find anything relevant for myself.
I need some assistance/advice at this point.
Edit: Currently, I'm on a Pentium4 with 384mb ram which literally makes any modern app impossible (even browsing). <comment><USER2> You seem to know your way round words so I'd advise freelance writing. Submit a few articles to a few places that are relevant to your interests and fairly current. Naturally taking time to get a feel for the style on the site. Make sure the editors are aware that you're giving them free stuff as a good will gesture and are available for more content if they need it. You should be able to get to $300 this way fairly easily, but it may take some time for responses, and a few rejections if people don't like your writing, but eventually you'll get a few gigs, maybe some steady ones, for monthly, weekly articles.

If you think you can write something good enough (and it's not that hard to be better than 90% of the target audience) then it'd be a nice quick way of getting the cash.

</comment><comment><USER3> Create something cool and fund it using kickstarter? Though it's hard to offer advice without knowing your skillset, what are you good at? :)

<comment><AUTHOR> I'm good with computers, in general. I know very basic stuff about programming which doesn't really count.

I see fake/scam kickstarters all the time and I don't think I can create something good enough so people don't see it like that.

<comment><USER4> You should learn to code, it's free and you can code with any computer.

Do you really really need a new gaming computer?

<comment><AUTHOR> well for gaming and running modern apps without any trouble, yes. I'm learning java but this is probably going to take more than 2 years to have enough skills to earn with it.

I honestly can not even browse properly with this system. Heck, it only knows multitasking in theory. I'm a big-time gamer and knowing to have missed all of those great games I wanted to play over the years hurts.

<comment><USER5> Where are you based ?

<comment><AUTHOR> India

</comment></comment></comment></comment></comment></comment><comment><USER6> fiverr (<http://fiverr.com>) might be a good place to start. There are plenty of people who want small jobs doing, particularly things like researching or writing small articles for blogs.</comment>


A simple, fully featured command line note taking tool written in Rust - <AUTHOR> https://github.com/rolandshoemaker/theca <comment><USER2> It's hard to beat org-mode. [http://orgmode.org/](http://orgmode.org/)

<comment><AUTHOR> So true. Org Mode - Organize Your Life In Plain Text! [0]

[http://doc.norang.ca/org-mode.html](http://doc.norang.ca/org-mode.html)

<comment><USER3> My life? No.

My projects? Absolutely.

</comment></comment></comment><comment><USER4> This sort of very loosely reminds me of boom [1] which I used briefly before writing my own piece of bash shell script garbage. For some reason a majority of my note taking revolves around links.

There are also times like looking for clothes are other private research that I do not what hundreds of bookmarks stored in my browser.

To be honest I still haven't found the right tool for managing bookmarks and have just resorted to text files in emacs/vim and pbcopy/pbpaste.

[1]: [https://zachholman.com/boom/](https://zachholman.com/boom/)

<comment><USER5> Have you considered using [https://pinboard.in](https://pinboard.in)? It's a great tool for bookmark organization using tagging. I have over 3500 private bookmarks on that site, but I rarely lose links or have issues isolating sets of links relating to particular projects. It costs something like $15 for an account, but there are no ads and your data isn't sold or shared if you don't want it to be.

</comment></comment><comment><USER6> I use Terminal Velocity [http://www.seanh.cc/terminal_velocity/](http://www.seanh.cc/terminal_velocity/) it uses the same data as the awesome GUI version Notational Velocity [http://notational.net/](http://notational.net/)

<comment><USER7> sweet! thank you I have been looking for a nice simple terminal note taker. I think this is the one for me

</comment></comment><comment><USER8> I just released version 0.2 of todolist [1] which looks and feels very similar to theca in a lot of ways. The main difference is that todolist is focused around GTD and productivity, and is akin to Todoist or Wunderlist, but for the command line.

[1]: [http://todolist.site](http://todolist.site)

<comment><USER9> Looks really nice. I've been meaning to move to todo.txt[1] for a while now, would you say that todolist is better?

1 - [http://todotxt.com/](http://todotxt.com/)

<comment><USER8> The big difference is philosophical. I don't mind having a tool to manage my todos, whereas todo.txt is centered around your Todo.txt file.

I've been considering building an integration to Todo.txt as I don't think our projects are mutually exclusive.

I'm also building out a reusable web component and I plan on making an IOS + Android app as well.

</comment></comment></comment><comment><USER10> there's also [https://taskwarrior.org/](https://taskwarrior.org/) (not written in rust) with a similar feature set

<comment><AUTHOR> Also devtodo [0] (written in Go) and todo [1] written in Python.

[0] [https://github.com/alecthomas/devtodo2](https://github.com/alecthomas/devtodo2)

[1] [https://github.com/foobuzz/todo](https://github.com/foobuzz/todo)

</comment></comment><comment><AUTHOR> The following link introduces the tool:

      https://www.bracewel.net/introducing-theca/

<comment><USER11> As a link: [https://www.bracewel.net/introducing- theca/](https://www.bracewel.net/introducing-theca/)

</comment></comment><comment><USER12> Neat to see the Rust source for something straight-forward like this as I've been teaching myself the language recently.

Also, seeing as I just made a PR to the simplenote.vim plugin, I feel the need to make a shoutout to it: [https://github.com/mrtazz/simplenote.vim](https://github.com/mrtazz/simplenote.vim)

The extra benefit here is that you additionally get external syncing to simplenote, so you can then edit or use the notes on a phone app, another computer, etc.

</comment><comment><USER13> As a helpful hint to Roland, based on his example image. _Do not buy a boat._

Been there, done that. Unless you can afford to pay someone else to keep it up, and/or pay dock fees to make it easy to use when you want (or have plenty of experience already with taking care of boats), _do not buy a boat_.

You know that joke about the two favorite days in a boat owner's life, the day they buy a boat and the day they sell the boat? _So true_.

</comment><comment><USER14> Yet another note taking tool I use: [http://www.daemon.de/NOTE](http://www.daemon.de/NOTE)

It features encryption and is more useful than I thought before trying out.

</comment><comment><USER15> I made a similar tool using sh (tags, namespaces, etc): [https://github.com/nuex/note](https://github.com/nuex/note).

</comment><comment><USER16> It does not seem to build with the stable Rust.

      $ git clone ...
      $ cd theca
      $ cargo build
      ...
      errors
      ...

edit: formatting

</comment><comment><USER17> > Latest commit 95f255a on Mar 26, 2015

<comment><AUTHOR> You cannot ignore:

> 299 commits

[https://github.com/rolandshoemaker/theca/commits/master](https://github.com/rolandshoemaker/theca/commits/master)

and I don't see open issues either (the one that is open is unrelated to the functionality).

<comment><USER18> That's a good point -- a sign that it is working well for everyone using it.

Remember. Open source software generally doesn't have to release artificial upgrades to boost sales.</comment></comment></comment>


Show HN: API anomaly detection – Learn what your API is really doing - <AUTHOR> https://www.dydx.dev <comment><USER2> I've been using this with my team for about a few months for production level systems. It's been great for what it does. The real time traffic viewer is a handy tool for our day to day use and having the automated anomoly detection means we don't have to manually go track every request/response and be flooded with noise.

Handy first layer of defence thats helped surface errors before they've had large impact to users.</comment>


Thank you, Rails - <AUTHOR> http://jacobian.org/writing/thank-you-rails/

<comment><USER2> This is the tone that every language/framework comparison should take. Thank you, jacobian!

<comment><USER3> The django core devs are one of the best thing the framework has. I'd have a beer with any of them at the drop of a hat.

<comment><USER4> You made me google for Django core team just to make sure I remember all of their names [http://docs.djangoproject.com/en/dev/internals/committers/#t...](http://docs.djangoproject.com/en/dev/internals/committers/#the- original-team)

</comment></comment></comment><comment><USER5> This article is spot on.

It's a tribute to Rails' genius that so many people view it as a threat. You still see people who seem genuinely afraid to let go of their massive, overly complex frameworks, or optimizing every little bit of their PHP app. People afraid of relinquishing the slightest bit of control for convention.

What I actually see, when I hear developers decrying this stuff, is geeks afraid that they're going to lose their Genius cards now that there's an easier way.

The fact is, Rails doesn't reduce the amount of hard thinking required to write a reasonably complicated web app, it reduces the amount of boring boiler plate code. For heavy lifting Rails still gives you the tools you need, there's a reason Rails Metal and find_by_sql exist. There's a reason most of the core parts of Rails are interchangeable (esp. with the upcoming Rails 3). Solving any worthwhile problem generally requires real work. Rails doesn't change this.

The brilliance that Rails brings to the table is balance. Many of the design decisions of Rails just hit the sweet spot for a large category of apps, and remove so many of the pain points in development.

<comment><USER6> I sort of agree, but you're coming off a little over-excited there, and I say that as a 5-year Rails developer.

The thing about Rails is that it represents the maturation of web development. It's not anything amazing per se, just a clever roll up of the best practices that emerged from the decade of Perl, Java, PHP development that preceded it. Ruby is the secret sauce that makes things just feel so slick.

I don't mean to minimize the initial innovation, it's just that Rails is no longer very unique. A lot of frameworks have largely caught up even if written in less flexible languages, and long term I see opportunities for new frameworks to leapfrog Rails.

The biggest liability for Rails is the Ruby runtime. Yes progress is being made here, but it's still a pretty sad state of affairs with regards to memory leaks and performance. I bang my head up against this every few months and it really hurts.

Another issue is the need to handle more complex applications. Frameworks like Seaside allow you to set up complex stateful apps in a more robust way than will probably ever be technically possible in Rails (again due to limitations with Continuations in the Ruby runtime).

A related issue is the question of what dark places we will end up in over a couple decades of large code bases running under Ruby with no warnings. I think it's pretty clear by now that Java is an unnecessary straitjacket, but do-whatever-the-fuck-you-want-with-no-warnings-whatsoever Ruby environment is not necessarily the most conducive to long term stability. I'll take it over Java any day, but I still have my doubts.

Finally, there is the issue of increased ajax-ification of apps. Rails was a leader here early on insomuch as it provided proof of concept that Ajax could be done easily without a cross-browser-DHTML-guru certification, but 5 years later the Prototype + Rails helpers paradigm is quite dated. Ajax has huge potential for simplifying back-end code and making web apps inherently more scalable and performant. This is one area where Rails could re-invent itself, but a mature framework like Rails is going to have a disadvantage against a fresh approach starting from first principles.

In short, I think the competition has openings.

<comment><USER7> I love Rails to death and do Big Freaking Enterprise Web App Development in Java all day.

A lot of what people identify as pathological is an evolutionary advantage in BFEWAD. Straight-jacketing the programmer is often a good thing because on a team of 100 programmers in three continents (you might think I exaggerate), including (by my last count) 12 programmers who have less than 3 months of professional experience, we want to make sure the damage done by the least skilled programmer on his worst day is strictly contained.

I don't know if Rails scales to that sort of development, to be honest. The least skilled developer, touching one part of one class at the periphery of the project, is essentially one line of code away from blowing up the entire project.

I should know: since I'm the sole Rails programmer at my business, I am by definition the least skilled programmer. And since I've managed to corrupt the results of my analytics code by making a one-line ill-considered addition to my printing code (which are kept in wildly divergent classes in different packages and namespaced from each other), just because it was not obvious I was altering the global state of the interpreter. That sort of bug has never happened to me in Java.

A lot of techniques which are considered kosher in the Rails community don't scale to large distributed teams really well. Monkey patching is the obvious example -- if you have two developers who have different understandings of what Array#pack is supposed to do, you're going to run into HELLACIOUS, difficult to debug bugs. If you do not quickly clue into the fact that Array#pack was redefined in a file you've never seen before that was committed last Tuesday by your most junior developer in the Seoul office, enjoy spending the next several days going over code you swear looks right looking for the error.

<comment><USER8> _I don't know if Rails scales to that sort of development, to be honest_

Waaay off topic, but i wouldn't use the expression "scales to." Asking how to scale Rails up to 100 programmers is asking the wrong question. Asking how to maintain the same application with just one team on one continent is the question and Rails might be the answer. Then again, it might not be the answer for your specific company. But that is the question to ask.

 _If you do not quickly clue into the fact that Array#pack was redefined in a file you've never seen before that was committed last Tuesday by your most junior developer in the Seoul office, enjoy spending the next several days going over code you swear looks right looking for the error._

Again, you have my sympathies. But Rails is not the answer to this problem and neither is Java. One answer to that question that has worked for others in this situation could be continuous integration. Why didn't your automated tests fail when the dev in Seoul checked his code in?

I am not saying Rails is for you, or for anyone with 100 devs on multiple continents. But I do have a little experience with multiple developers on separate continents building C++ and Java applications, and the problem of stopping developers from breaking code was always solved with processes like continuous integration and code reviews and not because of some special property of Java.

I like Rails for certain things and not for others. I am not arguing you should use it. But I do feel that the issues you raise are not Java vs. Rails issues but process issues. Java won't solve them for you and neither will Rails.

<comment><USER9> "Asking how to scale Rails up to 100 programmers is asking the wrong question"

Just imagine what we could do with a Beowulf cluster of 100 Rails programmers!

<comment><USER10> In Soviet Russia, Slashdot flashbacks to you!

</comment></comment></comment></comment></comment></comment><comment><USER11> This is exactly the kind of attitude I like to see. Rather than argue why a certain framework or language is better, I'd rather reflect on how much things have changed. I remember 5 years ago programming in object oriented PHP.

I'm much happier now with Rails and Django.

<comment><USER12> I hear that.

I spent nearly 4 years doing OO PHP. I enjoy coding a lot more now I'm rocking ruby/rails.

If anything this article has made me more inclined to check out python/django.

</comment></comment><comment><USER13> The Rails novelty I've been most thankful for is their initial popularization of the use of non-monolothic web servers. Every webapp running on your machine doesn't have to be served up end-to-end by a single Apache config, much less with your goddamn programming language runtimes linked in to the same binary -- but nobody seemed to know that at the time.

Yes, there was plenty of emotional bullshit in the community as solutions were hyped and abandoned. I think Passenger was initially a massive logical regression when it was _mod_rails_ , but now that it's _mod_rack_ it no longer agitates me so.

Thank you, Rails, for helping the world realize how awesome HTTP is as seamless, simplifying middleware.

<comment><USER6> I dunno man, for most of the apps I run (2k-10k lines), the memory requirement is usually the biggest pain point.

<comment><USER13> No doubt, MRI has the worst GC of any programming language implementation in active use today, and the design of ActiveRecord/ActiveSupport/etc. push it over the cliff.

Even if it mostly failed at pulling it off, Rails convinced even some PHBs that Apache is not the alpha and omega of HTTP.

</comment></comment></comment><comment><USER14> jacobian is on fire with his blog posts lately. However, what he said that "Windows folk look down on us Mac users" is in my experience false. It is definitely the other way around.

<comment><USER15> It goes both ways and I'm not sure one side is guiltier than the other.

<comment><USER16> My impression is that Mac users tend to look down on Windows—the OS itself not its users, while liking Apple products makes you douchebag, sheeple and brainless victim of Apple marketing. Maybe that's because the most of Apple users do have experience with MS products which is not always the case on the opposite side.

<comment><USER17> That's not my impression at all.

Truth is, people can get kind of religions about their technological choices, no matter what those choices are (I guess it takes some faith to believe in your choice, when there's no clear answer to "which is best"? ... there never is).

</comment></comment></comment></comment><comment><USER18> The "love or money" struck a chord. It's similar to "when your hobby becomes your job, you no longer have a hobby." It certainly adds new concerns. There's the finding that rewards can be _demotivating_ : <http://www.gnu.org/philosophy/motivation.html> (HN: <http://news.ycombinator.com/item?id=783939>)

There's pg's idea, of working hard to make lots of money, so you are free to work on what you really enjoy.

And 37Signals' idea, of a lifestyle business that you enjoy working at in the first place (assuming you resolve the above added concerns and demotivation).

</comment><comment><USER19> I love this post. I've only recently gotten into development (< 3 years) and my biggest complaint about the development world is all the fighting between languages, frameworks, etc. I credit Rails with being the reason I was able to get into development in the first place - it made web development extremely accessible to people like me with little to no app development experience.

So all that said, I really appreciate the author's candor. The negative attacks people make against other frameworks and languages really discourage people who are just getting started with this stuff because it casts doubt in their minds about whether or not they bet on the right horse. I may actually play around with Django now to see what it's all about.

</comment><comment><USER20> This attitude is one reason that I really like the Django community. I've found, almost without fail, that most Djangonauts are friendly and patient with the framework's users, new and old alike.

<comment><USER21> Yeah, friendly with django users, which is nice if that's all you are. The problem, however, is what he mentions in the post: _"I've noticed the tone of the arguments in the Django community getting nastier — especially when it comes to Rails."_ Hopefully the ideas in this post catch on and I'm glad a prominent Django developer is calling it out.

I mentioned Ian Bicking's great talk at this year's PyCon elsewhere in these comments, but another thing he touched on was framework fanboyism, and how it's mainly the result of people being new to the framework and trying to convince themselves that it's the answer to everything. Whether it's Django or Rails or any other technology, excitement is good, but not when it becomes tribal and adversarial toward perceived competitors.

</comment></comment><comment><USER22> I liked the civil approach!

</comment><comment><USER23> My first thought when reading this is "The Django guys even think about Rails?"

I don't know much about the Django community, but in the Rails community I seldom hear any discussion of Django. The few times I've heard talk of Django in the Rails community, it's along the lines of "Oh yeah, it's great for x/y/z use cases." It's hard for me to imagine DHH or other Rails notables writing anything remotely similar to this post.

Is this just me being sheltered? Or is there more of a pre-occupation with Rails in the Django community than vice-versa? If so, why? Just curious to hear what other's experiences have been.

<comment><USER17> I don't know much about the Rails community, but they should definitely look at Django.

Django currently is more modular. The ease with which you can integrate third- party components is unparalleled in my experience. I also like Django's ORM a whole lot more.

Rails is awesome, other frameworks are too ... but keeping blinders on is not good on the long term.

<comment><USER21> Rails borrows plenty from django and python at large. Merb's slices and Rails' engines were directly inspired by Django's apps. Rails is getting automatic escaping of strings in templates after Django showed it was a better default. Rack was directly inspired by WSGI. Rip is based on pip. Rails developers aren't "keeping blinders on." Exactly the opposite.

</comment></comment></comment><comment><USER24> In addition to the cultural shift it brought to the web community, Rails' is due a debt of gratitude for its technical innovations as well. Django, Merb, Pylons and others are all iterations on the Rails approach to web development. Django, it seems, is like a teenage boy nearing the end of his adolescence and realizes that just maybe his parents aren't as stupid as he once thought.

<comment><USER25> FWIW, Django was in private use before Rails was made public, so while Django and Rails are kindred, it's not reasonable to call Django an iteration of Rails.

<comment><USER24> good to know. thanks.

</comment></comment></comment><comment><USER26> Excellent article!</comment>


HTML5 Nyan Cat - <AUTHOR> http://paperjs.org/ <comment><USER2> It's kind of amazing what you can do with what was originally nothing more than a document markup language. It will also be an absolute nightmare with web advertisements. Now we will need Canvas/WebGL/HTML5 Audio block as well as FlashBlock.</comment>


The slippery slope to obesity - <AUTHOR> http://www.newscientist.com/article/mg20827805.100-the-slippery-slope-to-obesity.html

<comment><USER2> I totally understand this article. I'll just stand in front of the pantry and snack sometimes, whereas when I was in college there is no way I'd ever do that, and I think it is partially because of my added weight (and the habit of eating to reduce stress or because I'm bored).

I find that eating less than what I typically would have, eating nuts and more protein (not Atkins, but just in general), and running has helped me lose a few pounds. Also, if I start snacking a lot, I sometimes grab a beer. People talk about beer bellies, but I find that I snack less when I'm drinking slowly.</comment>


Adobe FlexBuilder For Linux "On Hold"  - <AUTHOR> http://www.rachaelandtom.info/content/flex-builder-linux-canned-and-how-you-can-help-get-it-going-again Adobe is putting FlexBuilder for Linux development on hold due to "not enough requisition for the product to continue its development". <comment><USER2> While I can't access the page, the two concepts of Linux and Flex are culturally incompatible - one is a DIY barebones culture, while the other is already built.

You might want to try FlashDevelop with the Visual Design plugin or code Flash with the Flex SDK... in VI.</comment>


Curated music to increase your productivity while programming – Programmer's Mus - <AUTHOR> https://www.programmersmusic.com/?utm_source=hackernews&utm_medium=shared_post&utm_campaign=epic <comment><USER2> Well, the only thing that increases my productivity in terms of sounds is their absence.

Relevant post appeared just 20 mins ago: 58% of high-performance employees say they need more quiet workspaces [https://hackernoon.com/58-of-high- performance-employees-say-...](https://hackernoon.com/58-of-high-performance- employees-say-they-need-more-quiet-work-spaces-4381241a6453)</comment>


A Spellchecker Used to Be a Major Feat of Software Engineering - <AUTHOR> http://prog21.dadgum.com/29.html?repost <comment><USER2> I wrote a spellchecker in the 80's for the Commodore 64. Step 1 was writing an efficient data transfer algorithm to move the bits off of the disk so that the 1541 drive could hit the sector interleave (it would miss it using its built- in data transfer algorithm). This sped up IO by 500%. But for reference that was still only about ~25kbps, or a bit slower than a 28.8kbps modem. Step 2 was coming up with a data compression algorithm that exploited the distribution of the top 30 or so 2/3-grams in English. I had a dictionary of about 80K words.

I can confirm this is on the order of several months worth of work :)

<comment><USER3> This seems fascinating. Can you share a more detailed description?

Like, what kind of data compression algo you chose at that time and what were the choices?

How did the techniques you developed at that time helped you later and what significance/standing they have in today's programming world?

How did your spell checker turn out in terms of performance and memory?

Were there better implementations around at that time? Which one was widely accepted as the best one?

Thanks in advance!

<comment><USER2> Happy to. I was 15 at the time, so I had limited knowledge of algorithms. So, I invented my own :)

IIRC I packed each character into 6 bits, using the first 26 values for A-Z, and the rest of the values for the common 2-3 grams that I found in the back of a dictionary in the local library. I had some other scheme for building words from stem + suffixes (eg flood, flooded).

What I learned the most from that experience was mostly around reverse- engineering and perseverance. I had to figure out what the 1541 drive did by disassembling its ROM and following the boot sequence. When comparing it to a 2040 drive (a older dual drive variant that was much more expensive - something like $2500 in 1981 dollars) I knew quite a bit about the sector interleave spacing - the disk could do sustained 2 sector reads per revolution. So I knew there was room for improvement if I could just get the transfer rate between the disk and the C-64 to go faster. I did that by improving how it transferred bits down the wire. To cut costs, Commodore had a serial interface vs. the parallel IEEE-488 interface used in the 2040 / Commodore PETs of the previous generation. They had a super inefficient algorithm where they did a handshake for every bit that went down the wire. This was due to the VIC chip in the C-64 stealing cycles from the 6510 CPU whenever it needed to read from shared RAM. Since they weren't clever enough to figure out when the VIC chip would steal cycles they did a handshake for every bit.

I improved this by asynchronously transferring 2 bits at a time using the clock and the data lines for ~3 bytes. I could read a register on the VIC chip that would tell me what scan line was being processed and from that I could tell when the VIC chip would steal the bus. Also on the vertical flyback I would be able to transfer bits with impunity.

This speed boost made it possible for me to hit the interleave on the disk and get the transfer back up to ~25Kbps.

These were pretty low level hacks (that worked quite well) to get things to go fast. Not sure how any of that transfers to the things we do today. One thing's for sure, I don't think I'll ever understand a modern computer as well as I understood those computers of my childhood.

The spell checker was completely IO bound. The 1541 stored ~170KB of data. The words on disk were sorted and I generated a unique sorted list of words in memory. It was, at the time the fastest spell checker for the Commodore 64, it was packaged with a popular word processor of the time called WordPro 64. Most of the other spell checkers had much smaller dictionaries and took a LONG time to read the disk. I could read 170KB in something like 70s, which, using my data transfer improvements was 5x faster than any other spell checker at the time. I'm pretty sure I had more words in my dictionary too. But things are a bit fuzzy - that was nearly 30 years ago!

</comment></comment></comment><comment><USER4> _A program to load /usr/share/dict/words into a hash table is 3-5 lines of Perl or Python ... That's progress._

That's progress in terms of cheap RAM and cheap CPU cycles. In terms of software architecture, that's not progress -- that's brute force.

Assuming that code for efficiently indexing and compressing this kind of dictionary was written 25 years ago, there doesn't seem to be any good reason not to reuse it. The fact that there's impedance to doing so means that our languages and our tools still need improving.

(25 years ago I'd have predicted that in 2012 some kind of AI-driven optimizer could have figured out the correct data structures for this problem and automatically converted the naive hash table lookup into a more efficient structure)

Also, jeesh, use mmap() and a binary search or something.

<comment><USER5> > _Assuming that code for efficiently indexing and compressing this kind of > dictionary was written 25 years ago, there doesn't seem to be any good > reason not to reuse it._

What if the efficient code is extremely "clever" and hard to understand from reading the code (and thus hard to fix bugs, add new features, etc.)? Doesn't it make sense to revert to the simpler and technically less efficient version if you _know_ that the hardware will be more than enough?

I suppose you could still argue that the more efficient version is better, at least once it is mature and packaged in some library or framework.

<comment><USER6> What makes sense is creating a spell checker library, and then having other programs used that instead of implementing spell check themselves.

Granted, if your program is such that a naive, 3-5 line python implementation is sufficient, then it is probably not worth the effort to use a library. If my web-browser, word processor, e-mail client, and every other large program that has text editing implements spell check themselves, I doubt I would get comparable performance to if they all use a library designed specifically for spell check, and optimized by many other projects that used it over history. On the subject, I would be interested to know if most large programs I mentioned actually impalement spell check themselves.

</comment></comment></comment><comment><USER7> I wonder if someday in 30 years people will look back in the same way and say: wow, you know there was once a time when search engines were major feats of engineering - and Decentralized Networks were deemed impractical!

They just as us, were resource limited. The modern constraints have merely shifted. They came up with amazing tricks to get around physical bottlenecks - just as we do now. We tend to call our current foci engineering instead of 'bags of tricks/hacks'. But when technology progresses till we take things for granted that were once hard, we young ones look back with a mix of disbelief and awe that people used to go through so much trouble for something that is now so trivial.

<comment><USER8> I think search engines will always be major feats of engineering - the big difference between a spell-checker and a search engine is in the former the problem space rarely evolves.

An English dictionary, for example, only has a a small number of words added each year. A search engine is a different thing entirely: not only are new items added all the time, but the _format_ of these items evolves. Today search engines need to deal with non-textual formats such as videos, images, and audio. This is a very difficult problem.

The fact that there are now APIs and libraries that let developers use things like latent semantic mapping without having to roll their own algorithms and solutions can certainly make writing an intelligent textual search engine a lot easier than it used to be.

But the key difference here is that what we demand from a 'search engine' (and by this I mean Google, or Bing) ten years will be much greater than what we demand now. We'll have new media to search for, new types of queries, new expectations. But a spell checker will always be a spell checker.

At least, that's my opinion. I'm sure someone will disagree!

<comment><USER9> Sure, I'll disagree :) When you have enough memory bandwidth to compute the relationships of all pages in just a few seconds, then you can re-index the entire corpus according to whatever criteria you want (PageRank or face detection or whatever) for each query. So you have some spiders that add content to the database, and re-index the database for every query.

<comment><USER8> Good point - I don't know if that solves the problem of getting different forms of media into the system in the first place though. I think as long as people create and new types of media there will be interesting problems to search for them. Searching video based off of text queries, for example, is a much harder problem than simple text search!

</comment></comment></comment></comment><comment><USER10> I would like to know some of the details of the algorithmic tricks that were employed to solve this problem. As I was reading, I was thinking of a tree structure encoding the dictionary with each letter (of a valid word) being a node. If the next letter isn't found, or if you reach a leaf with letters left in the candidate word, then you've misspelled something.

Does anyone have an idea of how much compression could be achieved through such a structure?

<comment><USER11> You're describing a trie, <http://en.wikipedia.org/wiki/Trie>

<comment><USER12> Multiple software engineers independently arriving at the same obvious solution? Sounds like something somebody would try to patent today...

<comment><USER13> Thankfully many of the novel solutions that were created in the early days weren't created by people that just wanted a buck.

</comment></comment></comment></comment><comment><USER14> Actually I tend to disagree. Yeah, you can do that for a hobby project.

I'm working in OCR / ICR here. We're often depending on dictionaries to fix recognition errors. So you want to correct names for example, by creating a more or less complete list of all names (we're assuming you know all the names in advance, for example for customers). The dictionary is huge.

"Looking up a word in this hash table dictionary is a trivial expression, one built into the language. And that's it."

Well, no. A spellchecker that just answers "I don't know that word" would be crap. You need to find similar words. Which isn't part of any standard library I am familiar with. In addition it's still a challenge to find all candidates that have a levenshtein distance (or LD or .. whatever metric you like) of N from the input, for N > 2 or 3.

Think address. You have a list of all streets, which tend to be rather long (Germany: "Strasse" = street, the pattern "<name> Strasse" is common, let's assume you expect 12-14+ chars). The longer the expected input, the higher I'd set the tolerance for errors. Finding all matches with 3+ substitutions/deletions/additions on a large dataset, in a small amount of time is still interesting and a challenge.

In fact, we partner with one company that provides nothing but exactly this, as their single (well-known, respected) product.

<comment><USER15> You should probably also go Bayesian on word frequencies for the suggestion ordering. Maybe also on error types (missing letter, repeated letter, nearby (on standard keyboard) letter.

<comment><USER14> Your comment and the reply to it are good if we're talking spell checker software for stuff people type.

What I have to deal with as well are recognition errors. From trivial replacements (I/l/1,C/G,i/j,P/R etc.) to 'engine said that there's some character here according to the character segmentation results, but it has no damn clue what character it could be' that's a different look at the same problem.

Also, for typed content I see quite a lot of shortcuts. SwiftKey for Android, nice as it is, seems to be too braindead to correct words that _start_ with the wrong character (if I type vharacter, with just one single slip at the start, it fails miserably and looks baaad imho). Assumptions like 'just check adjacent characters on the keyboard (special points for assuming a keyboard layout)' or 'ah, the user is certainly starting the jnput correctly and just might misspress a letter in the middle of a word' are nice models to make the developer's life easier, but they don't work for a good number of cases as well..

</comment></comment></comment><comment><USER16> "That's progress."

Yes, but not in software. It's the hardware that's improved. So the sw can be sloppy and inefficient and most people won't notice.

Hardware has improved. Software has not. This is hard for some folks to accept. But it is a plain truth. Take away the added power of new hardware and what's left? You wouldn't want to know.

It is easier to do the same basic computing tasks as in 1984, with less effort, but it's not easier to exceed what you could do in 1984 because you have better software. It's because you have better hardware and can afford to be sloppy. 2-3 lines of perl/Python but how many lines are in the binary or the libraries? (e.g. what if you discovered there was gratuitous use of backtracking in _all_ perl's regex, even for the simplest matching; who would care?) There is no Moore's Law for software. To put it another way, most of the computing tasks being done today are the same ones (albeit on a different scale) and use the same methods (or even lazier ones) as in 1984. Hence the example of spellcheck. It's one of many tasks performed in 1984 and today and it will be performed in the future.

It's easy to mistake advances in hardware (more power) for advances in software (novel and more efficient approaches to problems).

<comment><USER17> Trying to look at how software performance has improved in the way you are looking at it doesn't really work. There is no point putting time into optimising things that run fast enough. There are many algorithms that have been improved dramatically. People use this kind of matching for DNA, nobody is busy creating slower algorithms, they are only getting faster (e.g. www- igm.univ-mlv.fr/~lecroq/articles/cpm2009fl.pdf). Prime factorisation, optimisation, etc. are all being actively researched.

In other areas people are doing things which weren't even possible on old hardware, think about 3D graphics. Real time lighting approximations are doing really clever stuff, just look at the latest unreal engine demo. If you put these into old hardware you would get the same quality render in less time. Modern ray tracing engines are using more sophisticated algorithms, giving better results in less time.

Beyond the algorithmic work optimising for modern hardware is different to old hardware. An optimal program for old hardware isn't optimal for modern hardware and vice versa. Now if a program needs data from RAM you have to wait hundreds to cpu cycles. Even accessing the L3 cache, which is in a modern processor chip, takes about 75 cycles on modern chips. So you can recalculate things and find your program runs faster.

Similar things happen with branches, I was looking at some GPU shaders recently and there was a simple raytracing loop (parallax occlusion mapping), the obvious way to do it is to stop when you intersect the surface. Instead it is actually faster to always run the loop for 10 steps because this removes the branch. So you do twice as many loop iterations on average but your code runs faster.

Of course you can afford to be sloppy as well. People are 'sloppy' so that their code is faster to write, easier to read and less likely to have bugs (3 lines of python is pretty likely to be easy to read and bug free). I would say software is advancing in many different ways, which hardware has enabled to happen.

<comment><USER16> The numerous references to hardware in your comment only serve to illustrate my point.

Of course there have been some new algos and improvements to existing ones since 1984. But nothing approaching a Moore's Law. The dramatic changes the blog post highlighted are due to hardware, not software.

Take away the hardware advances (hold the hardware as a constant), then look at software as the variable. Then we can have a meaningful discussion of software improvements over time. IOW, run new software on old hardware.

To measure advances in hardware, hold software as the constant. IOW, run old software on new hardware.

If both are variables, it's difficult to assess how much software has improved on it own, without the benefit of new hardware.

Linus Torvalds' comments on the future of RISC, CPU instructions, and compatibility versus "cool new features" in the /. interview were interesting.

</comment></comment></comment><comment><USER18> Just because a problem has been "solved" for one platform (Fast PC's w/ Gigabytes of ram/disk) doesn't mean it is solved for all platforms (Web apps for phones/tablets, etc).

John Resig (of jQuery and Khan Academy fame) had a really interesting thread on creating a fast-loading (i.e. small, efficient) dictionary for a JavaScript app. <http://ejohn.org/blog/revised-javascript-dictionary-search/>

The comments have some really clever ideas for encoding the dictionary and Resig weighs in on his favorite solution with informative data. There's an interesting "Succinct Trie" data structure that turns a 620K dictionary into a 220K string that doesn't need to be decoded to be searched. <http://stevehanov.ca/blog/index.php?id=120>

</comment><comment><USER19> LOL, the URL is: <http://prog21.dadgum.com/29.html?repost>

That might explain why it's so familiar.

<comment><USER20> Here are four links to threads for this url:

(<http://news.ycombinator.com/item?id=3466388>)

(<http://news.ycombinator.com/item?id=212221>)

(<http://news.ycombinator.com/item?id=1702445>)

(<http://news.ycombinator.com/item?id=2928102>)

</comment></comment><comment><USER21> > For reference, on my MacBook, the standard dictionary in > /usr/share/dict/words is 2,486,813 bytes

Polish dictionary is about 3,500,000 /words/, many more are generated by the affix file. From archeology I've done some time ago, about year 1997 there were custom scripts written by creators/maintainers of Polish ispell dictionary, because as the files note using the standard toolset would require over 1 GB of RAM (this was in year 1997, mind you).

</comment><comment><USER22> _"Writing a spellchecker in the mid-1980s was a hard problem. Programmers came up with some impressive data compression methods in response to the spellchecker challenge."_

It's still a hard problem. Most working programmers today couldn't write a good spellchecker if their life depended on it.

Sure, your average coder can load the dictionary file into RAM in a hash table (built by someone else), and a few of those could maybe use a library implementing a Trie or a DAWG (built by someone else)...and a percentage of those might even understand what they're doing well enough to know how to use those tools to make things better. But once you've got the data into memory, what do you do with it? About the most anyone can do is point to Peter Norvig's blog post.

Sadly, very few people understand the theory behind it well enough to make improvements. So for everyone else, it's a _major feat_ of software engineering -- on a bigger computer.

<comment><USER23> Sure, it's still a hard problem, like carpentry is a hard problem. I've never had to do it because it's been solved for 20 years, but I'm fairly sure I'd get great at it if it were my day job.

<comment><USER22> loading data into a hash table is a solved problem. coming up with clever ways of solving problems that are beyond the scale of today's computers is the challenging, _interesting_ part.

</comment></comment></comment><comment><USER24> Writing a spellchecker is still a major feat of software engineering. Loading up some words into a hash table does not a spellchecker make.

<comment><USER25> I wouldn't call it /major/, but a good one is still more than an afternoon's worth of mucking around with an in-memory hash table.

<comment><USER26> It's pretty serious, to hear Peter Norvig tell it: <http://norvig.com/spell- correct.html>. Also, it's one thing to do it, and another thing to make it _fast_.

Seems like it's one of those 80%/20%, to butcher that expression, where 80% of the effort goes into the last 20% of speed/quality. :)

</comment></comment></comment><comment><USER27> Wow 256K, the luxury!

Apple //e, 64K memory (possibly 128K if you had the memory expansion card) (The Apple ][+ only had 48K)

You start with the 143K floppy containing the word processor in Drive 1 (S6,D1) and the floppy with your document in Drive 2 (S6,D2). Edit away, remember to save occasionally.

When you were done with your rough draft you save your file and exit the word processor and swap in the floppy containing the spell check program. Point it at your file and swap in the floppy with the dictionary. Work through the file and approve/reject it's suggestions.

Exit the spell check and swap in the word processor floppy...

Repeat as often as necessary.

</comment><comment><USER20> We have all this power and we use it in quite dull ways.

Not using a dictionary seems like more fun:

([http://www.spellingsociety.org/journals/j20/spellchecking.ph...](http://www.spellingsociety.org/journals/j20/spellchecking.php))

> _Morris, Robert & Cherry, Lorinda L, 'Computer detection of typographical > errors', IEEE Trans Professional Communication, vol. PC-18, no.1, pp54-64, > March 1975._

</comment><comment><USER28> Wow, this article has no research and is just half-baked speculation. "there were some very clever data structures" yeah? Like what? And the proposed solution? Load the whole thing into a hash? Did you forget that spellchecker offer suggested corrections? How do you expect to implement that?

</comment><comment><USER29> I'm no expert on data structures or algorithms but couldn't you just simply use bloom filters?

<comment><USER30> I don't think a bloom filter would be very useful for a spell checker. Bloom filters reduce disk reads when the majority of keys searched for are _not_ in the dictionary. But in the context of a word processor, the majority of words tend to be spelled correctly, so very few would be rejected by the filter.

</comment></comment><comment><USER31> If anyone is looking to refresh their programming chops for a problem like this, here [1] is a fairly straightforward, simple implementation of a spell- checker. Provided for a Python Course at Harvey Mudd (the class I TA uses this new curriculum), the task is to memoize a recursive string-distance algorithm. The results are actually quite lovely.

[1]: <https://www.cs.hmc.edu/twiki/bin/view/ModularCS1/SPAM>!

 _Note_ : copy the entire URL, the `!` breaks the hyperlinking.

</comment><comment><USER32> Interesting, the README file in /usr/share/dict contains this:

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

# $NetBSD: README,v 1.2 1997/03/26 07:14:32 mikel Exp $

# @(#)README 8.1 (Berkeley) 6/5/93

WEB ---- (introduction provided by jaw@riacs)

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

Welcome to web2 (Webster's Second International) all 234,936 words worth.The 1934 copyright has elapsed, according to the supplier. The supplemental 'web2a' list contains hyphenated terms as well as assorted noun and adverbial phrases. The wordlist makes a dandy 'grep' victim.

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

</comment><comment><USER33> A good spell checker is still a major feat of software engineering.

</comment><comment><USER34> Large memory sizes did a similar thing to visibility determination in computer graphics. Determining which parts of multiple 3D intersecting shapes are visible used to be tricky and dependent on the shapes - triangle vs triangle was different than triangle vs sphere, tube vs sphere and so on. Now you can just use z-buffering which determines the visibility on a per-pixel basis, not to mention that all of this is implemented for you in hardware.

</comment><comment><USER35> A better title: "An English-only spellchecker with a fixed, static vocabulary used to be a major feat of software engineering".

(because other cases still pretty much are)

</comment><comment><USER36> Fascinating! I look forward to the day when data collection methods are similarly looked upon as trivial by future standards. Dealing with PDF documents one cannot scrape, yet needs the data, gets to be ridiculous!

</comment><comment><USER37> Grate spellcheckers continue two bee a major feet of software engineering.</comment>


What falling e-book sales tell us about technology in 2017 - <AUTHOR> https://thenextweb.com/insider/2017/06/19/falling-e-book-sales-tell-us-technology-2017/ <comment><USER2> I can only speak for myself, but there's a deep connection that is made with the physical object that an e-book will never replace.

My favorite books that I own are the ones that are beat up, earmarked, scribbled in, and well loved.

There's also the collectors aspect - filling your home with books adds character to it. It's not like your going to mount your kindle on the wall and have guests flip through it.

Same reason why vinyl is making a comeback. Yes digital files are easier to manage, collect, and search - but the physicality of the object plays a huge role in the experience.

In general I think the trend of "nostalgia" as the article puts it, is a knee- jerk reaction against the ever growing possibility of the digital world. Images, books, music, memories, even experiences are being digitized, consumed, and then forgotten. It's all white noise. Have a physical object grounds it in reality and creates a history that you can't replicate through digital means.

I'd much rather have a family heirloom passed down then a facebook selfie Grandma took at thanksgiving.</comment>


Access Granted - <AUTHOR> https://www.wiumlie.no/2019/rettspraksis/12-07-access-granted/ <comment><AUTHOR> The supreme court decision: [https://translate.google.com/translate?sl=no&tl=en&u=https%3...](https://translate.google.com/translate?sl=no&tl=en&u=https%3A%2F%2Frettspraksis.no%2Fwiki%2FHR-2019-1725-A)

The author of this article is the creator of CSS.</comment>


Pros and Cons of Mobile SEO - <AUTHOR> http://blog.mobify.me/2009/07/14/pros-and-cons-of-mobile-seo/

<comment> onreact-com You are doing mobile SEO the wrong way. The industry best practice is to use one page with different stylesheets. Not a separate page, site or subdomain like Digg does.

You might want to check out a list of mobile SEO resources I compiled last week for a start:

[http://www.seoptimise.com/blog/2009/07/33-mobile-seo- mobile-...](http://www.seoptimise.com/blog/2009/07/33-mobile-seo-mobile- analytics-resources.html)

[Edit:] Also "blocking search engine crawlers from seeing the mobile view" will result in your mobile pages removed completely, from the mobile index as well.

<comment><USER3> While the CSS spec was designed to keep in mind various media types, the industry standard is indeed a 'm' subdomain for the mobile version of the site. I think this need has arisen because the use of HTML/CSS has gone well beyond minimalist content markup of documents, to full blown GUI websites (i.e. sites with complex navigation bars), which doesn't exactly transfer well onto mobile. I think this is why only the simplest of sites (i.e. blogs, text search engine results) will be able to display an alternate stylesheet for acceptable mobile presentation.

More complex sites would need a more tuned site (i.e. m.wikipedia.org - <USER2> how the edit stuff is cut out for example)

ps- i hope i've understood your contention correctly :D

<comment> onreact-com OK, it obviously depends on which industry we actually speak of. The overall Web industry tends to do it wrong like in the example above. Creating two sites for the same content is fundamentally flawed.

From a SEO perspective we always try to avoid duplicate content issues and splitting up of your site authority. I'd recommend the current issue of the Search Marketing Standard Magazine (disclosure: I'm an affiliate of it) which features an interview with mobile SEO Cindy Krum. She explains the issue with separate sites/pages quite well.

On the other hand I have witnessed the negative impact of such subdomain based mobile SEO already years ago. It never quite worked with Google.

<comment><AUTHOR> Well, it's pretty much a standard:

cnn.com & m.cnn.com

facebook.com & m.facebook.com

gmail.com & m.gmail.com

So definitely disagree with the notion of "fundamentally flawed" as literally every significant site is doing it at this point

<comment> onreact-com Yeah, but do we need Gmail or Facebook crawled? No, both are private. They don't get indexed at all.

The CNN site is quite messed up. Check this:

"2 U.S. Marines killed in Afghanistan" site:cnn.com

You have duplicate content twice + the mobile version does not even contain the article when you click on the search snippet.</comment></comment></comment></comment></comment>


Facebook Now Growing by Over 700,000 Users a Day, and New Engagement Stats - <AUTHOR> http://www.insidefacebook.com/2009/07/02/facebook-now-growing-by-over-700000-users-a-day-updated-engagement-stats/ <comment><USER2> Could this have something to do with bots squatting on username URLs?

<comment><USER3> I thought that too. I buy that they get thousands of legit users signing up each day, but those numbers are a bit to wild to all be real accounts in my opinion.

</comment></comment><comment><USER4> I have a very hard time believing that 700,000 new people actually sign up to Facebook every day.

</comment><comment><USER5> That figure is meaningless.

More interesting would be how many _active_ users they have. I.e. how many users login and/or do anything per month.

Too bad they don't brag about that, I'm sure those stats would be impressive enough (albeit not in the "hundreds of thousads per day" ballpark).

<comment><USER6> _albeit not in the "hundreds of thousads per day" ballpark_

Hundreds of thousands per day is incredibly low. Zynga is the largest game developer on facebook and they claim something like 13 million unique dailies.

Facebook is one of the stickiest ( _the_ stickiest?) sites around, so i'm sure its 10 - 20% a day of their userbase. For many people facebook has become as integral to their daily lives as pressing the start button on windows.

<comment><USER5> I was referring to the number of active users (e.g. users that logged in during the last 30 days).

I wonder if _that_ figure grows by hundreds of thousands per day, but the article doesn't give it away.

13mio uniques for zynga gives a ballpark and could be interpreted as facebook having at least that number of active users (probably much more, not everybody plays games). But it's still an order of magnitude to the 200mio figure quoted in the article, thus I'm still none the wiser about whether that was meant to be _active_ users or merely _registered_ users.

<comment><USER6> ahh makes sense.

</comment></comment></comment></comment><comment><USER7> so they add 255 million a year? yeah right</comment>