Ask HN: What load balancing software do you use ? - <AUTHOR> I'm looking into software load balancers and so far the 4 that seem to standout are:<p>- Nginx (http://nginx.net/) - Pound (http://www.apsis.ch/pound/) - HAProxy (http://haproxy.1wt.eu/) - Perlbal (http://www.danga.com/perlbal/)<p>Does anybody have experience using any of these, in live production environments (under reasonably heavy usage), and if so what pros and cons do you see with them ? <comment><USER2> I'm a huge fan of both Nginx and HAProxy - used together.

[internet] <-> [Nginx] <-> [HAProxy] <-> [app servers]

Nginx is a great webserver, but isn't a good load balancer. You can install a patch that improves the balancer - [http://brainspl.at/articles/2007/11/09/a-fair-proxy- balancer...](http://brainspl.at/articles/2007/11/09/a-fair-proxy-balancer-for- nginx-and-mongrel) \- but it still isn't as nice as HAProxy

With HAProxy the status of the system is visible. For the largest site I use HAProxy on I keep my status page public - <http://userscripts.org/haproxy> \- but it isn't required.

HAProxy is particularly good for rails since you can say each app server can only have 1 request at any time. This makes requests queue at the HAProxy layer, so if an app server has a request that takes a extra long time you don't have requests waiting for that app server to finish - instead you wait for the next available app server in a FIFO queue.

Combining HAProxy with munin gives great stats for tuning your system - whereas just nginx with the patch had no visibility into where bottlenecks might be.

I

<comment><AUTHOR> Thanks - I got a basic Nginx config up and running on EC2 within a couple of hours. I'm intrigued by the idea of using it in combination with HAProxy though, so wondered if you didn't mind a few follow-up questions ? Essentially:

\- Do you run the two products on the same physical machine ?

\- What does Nginx do that HAProxy doesn't ? (i.e. why not just stick with HAProxy ?)

\- I noticed that Nginx has some weighting options for load balancing (see <http://wiki.codemongers.com/NginxLoadBalanceExample>). Are these just not sophisticated enough for your needs ?

<comment><USER2> I do run them on the same machine for userscripts.org - although I have used them on seperate machines on other projects - nothing public though :)

I use Nginx for things like serving from memcached (someone else commented on that), rewrite rules, redirects, logging, ...

Also Nginx is good because I have 5 different virtual hosts on the box, so I can proxy to different app servers based on hostname/location.

Here is my commented nginx config for userscripts.org:

      http://pastie.textmate.org/private/rmp4b9xpwevxnckumxmq0a

Here is my haproxy config for userscripts.org:

      http://pastie.textmate.org/private/rbxzpeu7e0gjkkc6r04ta

Nginx does have weighting options, but I was unable to get the affect of having only 1 request hitting an app server at any time (it could be possible, but switching to HAProxy was easy, and in a month I've not had a second of down-time, and I restart all the app servers every hour via log rotate) Not having request queue at the app server level helped, combined with HAProxy pinging for health between requests has lead to faster requests, as queueing at the app server level leads to delays if you get behind a slow request.

</comment></comment></comment><comment><USER3> Recently switch all of the WordPress.com load balancers to be nginx. They push a little over a gigabit of traffic right now and about half a billion requests per day, no sweat. We use Spread + Wackamole for failover, there's more info on Barry's blog:

<http://barry.wordpress.com/2008/04/28/load-balancer-update/>

I wouldn't recommend DNS round robin for load balancing. (We did it for a while, many problems and flaws in the approach.)

<comment><USER4> I love how you casually mention "Half a billion requests per day"..

</comment></comment><comment><USER5> [http://blog.emmettshear.com/post/2008/03/03/Dont-use- Pound-f...](http://blog.emmettshear.com/post/2008/03/03/Dont-use-Pound-for- load-balancing)

[http://www.igvita.com/2008/02/11/nginx-and- memcached-a-400-b...](http://www.igvita.com/2008/02/11/nginx-and- memcached-a-400-boost/)

</comment><comment><USER6> We use HAProxy because we're very session based (each user sees an entirely different thing) and HAproxy was a good choice for that. I wrote a post on setting it up a few weeks ago.

[http://leavingcorporate.com/2008/03/03/session-based-load- ba...](http://leavingcorporate.com/2008/03/03/session-based-load-balancing- with-haproxy/)

</comment><comment><USER7> I'm using nginx in a couple different setups:

      nginx -> paste (pylons)

nginx on one machine, three other machines with 8 instances of paste each. Nginx proxies directly to the paste port (which incidentally is also itself a threaded server, but I've gotten best results by running several instance per box). Volume has been as high as ~8mm dynamic requests/day.

      nginx -> lighttpd -> php-fcgi

nginx on its own box proxying to 8 app servers each running 160 php-fcgi instances. Volume here is ~16mm dynamic requests/day.

Both have worked pretty well so far. As anortherjesse said, there's not a lot of feedback, but it's done everything I need so far.

</comment><comment><USER8> Consider also using multiple DNS A records - the selection would be random thus balancing the load. For example, do "nslookup google.com"

<comment><USER9> Don't you forfeit too much control this way? For example, the load on your servers would be determined by the caching behaviors of all the various DNS servers and clients out there. I think this scheme should only be used as a front line that leads to another layer of load balancers.

<comment><USER8> The idea is that there is enough chaos in the Internet to produce practically random result with sufficiently large number of users. Random is pretty good, unless you must proactively shift load to least-loaded systems (in which case you have to be super careful to avoid oscillations) .

One drawback is that you can't take system out of rotation as quickly, but this can be somewhat mitigated by setting very low TTL (60 seconds).

</comment></comment></comment><comment><USER10> I've used pen, Squid, and LVS. All useful for different situations, though LVS is just not practical for the vast majority of situations.

PerlBal looks really cool, as being written in Perl means it has some of the same kinds of flexibility that Squid has (a good reason for Squid is that you can write your own balancing algorithm in any language you like in a redirector script--I always used Perl, or Python when I was working with the Zope guys--so, you can actually do crazy stuff like choose the right server based on keeping them "primed" for the content users are asking for based on URL, or you can use destination URL hashing and achieve the same effect even if you have millions of URLs). Squid also has experimental support for ESI (Edge Side Includes) which is pretty awesome...build a page from disparate and wholly unrelated servers using a simple templating system, and caching them. I don't think any other Open Source product out there has ESI (experimental or otherwise).

<comment><USER11> How is LVS not practical? LVS is awesome... it's kernel-level and doesn't use any resources, plus is very simple but flexible. Forget the ultramonkey configurations and go with keepalived to handle the monitoring, failover, etc.

<comment><USER10> "for the vast majority of situations"

In my experience, balancing works better with smarts, thus my big long tirade about Squid (which is historically about the smartest option...though not necessarily the fastest...but fast enough).

LVS has its place, and I've used it when the situation is appropriate, it just isn't all that common that you really need to be able to saturate a Gb pipe, and the installation, maintenance, and configuration burden is much higher for a kernel level tool.

So, perhaps I should have been careful not to sound so dismissive of a tool that I like (and I'll note that you can find posts by me on the LVS mailing list from the first few months of the projects existence). My previous company even sponsored development of several related management tools.

</comment></comment></comment><comment><USER12> I've been using Apache 2.2 with mod_proxy_balancer to do load balancing for PHP and Rails apps for over a year now, and had pretty good experiences with it. Since I support a lot of existing Apache servers, the configuration is easy for me to work with, and the ability to do authn/authz and SSL termination at the load balancer lets me keep the load down on my application servers.

It's probably not as fast as Nginx, but I haven't found our load balancers to be a bottleneck. In fact, we've been doing load balancing on a pair of really, really wimpy servers (Celeron CPU and 512MB of RAM) running Apache on OpenBSD for about a half-dozen different apps for the last year, and never seen the average load climb up over about 0.5, even while handling upwards of 300 requests per second.

</comment><comment><USER13> Nginx: [http://highscalability.com/friends-sale- architecture-300-mil...](http://highscalability.com/friends-sale- architecture-300-million-page-view-month-facebook-ror-app)

</comment><comment><USER14> We're hosted at EngineYard, which use nginx with a fair load balancer plugin that ensures that new requests are assigned to free mongrel instances (yeah, it's RoR).

Works great.

Daniel

<comment><USER2> EngineYard uses nginx at the slice level and LVS at the site level (to balance between your slices) - this is for my startup (not userscripts.org which is at serverbeach)

</comment></comment><comment><USER15> I like Pound very much: it's simple and robust.

However, I recently noticed a memory leak. We use healthchecks on our production machines, which means a consistent rate of hits every few seconds, 24/7. After about 3 months, Pound had chewed up 1.7GB of RAM, which caused memory usage alerts in our monitors.

Not a big deal -- you can always restart the process -- but I'm still evaluating alternatives.

</comment><comment><USER16> I use perlbal, which is nice-n-simple. Add a few lines describing where your backend servers are to the config file, save it, and start perlbal.

For our $WORK applications, we just have an apache that proxies to the backend FastCGI apps. We don't have a ton of load, so that works fine. (We might be switching to nginx, which is much simpler than Apache for this use case.)

</comment><comment><USER17> I'm using Pound right now in one large installation, and nginx in another smaller installation, but it still has decent traffic.

I definitely prefer Nginx. It seems much faster, and has definitely given fewer headaches. It seems like an issue with Pound crops up every few weeks. My Pound config file is about 600 lines long now, and it is starting to get unmaintainable.

</comment><comment><USER18> I´ve used nginx in Rails and Pylons environments with good success. These apps don´t get much traffic so that wasn´t a consideration, but the ease and simplicity of nginx is fantastic. You never have to do anything with it once it's initially configured.

</comment><comment><USER19> I've used nginx and have been able to adapt old htaccess rules to get everything I used to get with apache. It's good on memory and I've never had a problem.

</comment><comment><USER20> Why use software? I have a hardware load balancer at Softlayer and for $99 bucks a month it's totally worth it.

<comment><USER21> Because Softlayer (as much as they rock) don't have failover for those load balancers. You may not need it, but after we had our site downed due to hardware failure of one of their load balancers, we moved to a redundant software based setup.

We used HAProxy and Heartbeat2 to provide fully redundant load balancers. On our smaller sites, we actually run the HAProxy and Heartbeat2 on two of the web servers for that cluster, so you don't need dedicated hardware if you don't want it. If you do this, and you're on softlayer, I'd recommend sending the back-channel traffic along the internal network to avoid using 2X your real bandwidth.

You can read about how to set it up here:

[http://www.digitalsanctuary.com/tech-blog/debian/13-steps- to...](http://www.digitalsanctuary.com/tech-blog/debian/13-steps-to-peace-of- mind.html)

</comment></comment><comment><USER22> ultramonkey in front of apache / php / postgresql

It was very smooth to setup with debian, but my first experience setting it up was with redhat and that was tortuous

<comment><USER23> what is ultramonkey like? i saw that a while back, but it looked like the project was no longer being updated.

<comment><USER22> I combined it with heartbeat and it works as advertised

</comment></comment></comment><comment><USER24> We use hardware load balancers, Cisco CSS 11501's.

</comment><comment><USER25> what is your app server? or is this only http?

<comment><AUTHOR> http only - we're using Apache at the backend.

</comment></comment><comment><USER26> nginx</comment>


Android is now the world's largest earthquake detection network - <AUTHOR> https://arstechnica.com/gadgets/2020/08/android-is-now-the-worlds-largest-earthquake-detection-network/ <comment><USER2> This is a very interesting research prospect and perhaps can be tested in earthquake prone areas, for example Indonesia regions near the fault lines.

Using the Android smartphone existing sensors (e.g. accelerometer), probably it can easily detect earthquake once it has happened. Japan has similar existing alarm system where they send SMS alerts to the residents of affected cities once any earth quake incident is detected, but not really sure where and how they put the sensors.

The more interesting approach is a system for prior alert of earthquakes. It is for predicting soon to happen earthquake, moments (or better several minutes or hours) before the incident. This is probably feasible due to many reports that mentioned animals got alarmed and look for cover themselves moments before the earthquake events[1].

For this prior alert detection maybe a more accurate front-end sensors are required for example, ADI's AD7768 sensor and connected them to a powerful cloud based earthquake detection back-end engine [2].

[1][https://www.discovermagazine.com/planet-earth/animals- sense-...](https://www.discovermagazine.com/planet-earth/animals-sense- earthquakes-before-they-happen-can-they-help-us-predict)

[2][https://www.analog.com/en/analog- dialogue/articles/understan...](https://www.analog.com/en/analog- dialogue/articles/understanding-the-fundamentals-of-earthquake-signal-sensing- networks.html)

</comment><comment><USER3> I just hope it doesn't use the earthquake detection as justification to make us unable to disable location data.

Other than that, it is a good example of how crowd sourcing data can be useful and even life saving.</comment>


Tell HN: Did you know there's a lean startups group? - <AUTHOR> http://groups.google.com/group/lean-startup-circle?hl=en

<comment><USER2> looks interesting, thank you for telling us.</comment>


Airbnb tests booking your entire trip with new 'Journeys' service - <AUTHOR> http://thenextweb.com/insider/2015/10/26/airbnb-tests-booking-your-entire-trip-with-new-journeys-service/ <comment><USER2> AirBnb started off as a sharing platform, but long term, rental companies will dominate the marketplace. Just like ebay spawned professional sellers. I wonder if Journeys will be overrun by companies like HopOn - Hop Off.

To deliver growth, AirBnb needs to find a balance between these mini-companies and individuals, who want to help tourists (and make money on the side)

<comment><USER3> s/AirBnb/Airbnb/</comment></comment>


The Surprising Way Bodycams Can Keep Police Officers from Helping People - <AUTHOR> https://slate.com/technology/2019/05/body-worn-cameras-police-officers-discretion.html <comment><USER2> We should return to the deescalation training associated with the old protect and serve doctrine.

We have body cams because we also have the escalation of force to compliance doctrine.

Liability management is also now necessary because we now train on high risk, high force policing.

What is worth what?</comment>


The Beautiful TI-108 - <AUTHOR> https://trackchanges.postlight.com/the-beautiful-ti-108-db1944d617c9 <comment><USER2> The HP-15c scientific calculator is a work of pure genius, beauty, and art along with its user manual. My dad has used his daily since ~1986 and demand was high enough to do a re-run in 2012 to make a few thousand more units at over $100 a pop. It uses RPN and can do matrices, calculus, statistics, and run programs. It is small, lightweight, excellent buttons, and the batteries last years. Engineers love them. No graphing, but it is amazing. TI is popular now, but at one point, only HP could be used for real math.

<comment><USER3> it blew my mind that you can buy an hp-15c at best buy still. it's on the shelf sort of by the cameras.

and before you start: when i feel like blowing 400 bucks on a time wasting and useless game console, you bet your ass i'm going to get shafted up close and personal whenever it tickles my fancy, i.e. at 8pm on a tuesday.

<comment><USER2> Didn't know they still had the 15c at Best Buy as that was a very limited run (yes I blew $100). Are you sure you didnt see the 12c? The 12c looks similar and is still stupidly popular in finance/accounting (it has a lot of pre-built business functions).

<comment><USER4> Yup, quite a few of us still use a HP-12c. I have one at my work desk and personal desk; what an absolute beauty of a device.

</comment></comment></comment></comment><comment><USER5> The author thinks the uglier design is lamentable, but it might have actually been done on purpose to discourage (accidental) theft, similar to how bowling shoes are hideous for the same reason.

When I was in school, we used the TI-84s in classes. The classroom versions we had were these ugly yellow ones that were very easy to notice and very easy to distinguish from the regular gray/black ones.

<comment><USER6> I loved programming so much in high school that I would routinely hack in TI- BASIC on these things as much as I could. It was an excellent language to cut your teeth on.

<comment><USER7> TI-BASIC and z80 assembly (TI-86) helped me get my programming fix during the day in high school since we had no programming classes.

</comment></comment></comment><comment><USER6> Inverting the display of "5318008" on your seven-segment display was a rite of passage as a teenage boy in America in the 80's.

<comment><USER8> For examples in other languages: [https://en.wikipedia.org/wiki/Calculator_spelling#Other_lang...](https://en.wikipedia.org/wiki/Calculator_spelling#Other_languages)

</comment></comment><comment><USER9> Its nice, but for a programmer I loved the [http://datamath.org/Sci/Modern/TI-34.htm](http://datamath.org/Sci/Modern/TI-34.htm) which was also solar powered and has lasted quite a long time since its still with me from my high school days.

<comment><USER10> If you're looking for an upgrade and/or do low-level stuff, the TI-36X Solar handles binary, hexadecimal, and octal quite nicely (though you do start running out of digits if you're trying to convert big numbers to binary). It also has a number of logic functions that you may or may not find useful.

Lately, I've been delighted by the equally competent fraction input/display system. I've been doing a lot of woodworking in US customary units, and the 36X beats the pants off of any other calculator I've owned[0].

Truly, it's a well thought-out little tool. So much so that when the display on mine pooped out, I went on eBay and found another one for 10 USD shipped.

[0] If somebody wants to recommend a dedicated builder's calculator that handles fractional inches handily, I'm all ears, but I haven't owned one to this point. Calculating board-feet would be a nice plus.

<comment><USER9> I'll ask for sure but I remember the folks in the vocational program (finish carpentry) using one they bought at Home Depot.

</comment></comment></comment><comment><USER11> A charming article. A Texas Instruments calculator (scientific, non- programmable) was practically my best friend at school in the 1980s, though I don't even know what model it was now. I'm not sure how to find out, as it seems that most model numbers were reused in a long series of different cases.

I've always associated American brands with terrible ergonomics, but TI calculators had unusually pleasing buttons and layout.

[Edit: Ah, uh, OK -- a few more minutes searching and I find "This calculator was developed and produced in Japan... A big advantage of the Toshiba design was the smooth and flawless keyboard." This is definitely the one, a TI-30SLR mkII: [http://datamath.org/Sci/Modern/TI-30SLR_2.htm](http://datamath.org/Sci/Modern/TI-30SLR_2.htm). Oh well. But it was much nicer to use than Casios of the time and the pleasant form carried over to the Galaxy series.]

</comment><comment><USER12> > _What are the top dogs you've met? What are the best streets in your town? > Who are the worst people you love? What are the ten best instructional > videos in your discipline? What are the worst colors? What are the five best > musical instruments?_

 _top best worst best worst best_ : what's with all this obsession with ranking??

I don't love many people but it would be impossible for me to rank them from "best" to "worst".

I don't even know what it would mean to _rank_ musical instruments. According to what criteria? If the best instrument is the piano, or the clarinet, can you have an orchestra of 100 pianos? Or 100 clarinets?

And colors...? Ok maybe it's a joke and I don't get it.

The problem with ranking from "worst" to "best" is it's uni-dimensional; as you add more axes it makes less and less sense.

It takes a very narrow mind to even ask such a question.

<comment><USER13> _what 's with all this obsession with ranking??_

It said so right in the article: you learn what you care about. Best musical instrument? Easy, mandolin. Maybe the violin. Both are tuned in fifths, so scale and chord patterns are transferable up and down, and across the fretboard/fingerboard. Far better than that bastardized tuning of the guitar. Play a melody, play rhythm (on the mandolin) if you have to, though not as good a choice as a guitar. And don't get me started on all the keys of a piano.

But that's what I care about in a musical instrument, mainly because I play one. YMMV, and it likely will if you don't play anything.

<comment><USER12> You're answering the question "what instruments do you like to play the most", which is different from "what are the 'best' instruments".

The last question implies some kind of absolute value system, not just your own personal taste (even if you're the one making the ranking).

<comment><USER14> I think you're reading objectiveness into the question. If it makes you feel better, replace "best" or "worst" with "most favorite" and "least favorite". The essence behind the question is still there, but it removes any interpretation of objectiveness.

However, I would argue that it also loses some impact. It removes the idea of a person having to decide what "best" or "worst" actually means. Instead, you would need a follow-up question of "why?" to clarify that particular point.

For instance, I would have answered French horn. That instrument can single- handedly cut through an entire orchestra, and there is no mistaking it when you hear it. The harpsichord would be a close runner-up. So I'm probably looking for unique sounds that are easy to pick out of a crowd.

</comment></comment></comment></comment><comment><USER15> A teardown of the components and why it's so reliable might be interesting.

<comment><USER16> A teardown wouldn't be too interesting; it looks like the calculator is basically just one chip inside: [http://www.datamath.org/BASIC/LCD_Modern/JPEG_TI-108.htm](http://www.datamath.org/BASIC/LCD_Modern/JPEG_TI-108.htm) Of course, it might be interesting to look inside the chip...

<comment><USER15> Now you're thinking what I'm thinking. :) Although, I was interested in the PCB, too, since I figured it might be extra simple. That's a way to reduce cost and improve reliability vs overcomplicated components used in many modern designs. Really, really simple indeed.

<comment><USER17> Even a modern "advanced" calculator like this 2-line model[^] is just a blob chip and keypad matrix. Calculators are all extremely simple until you get to the graphing ones that have external RAM or even flash memory.

[^] [http://datamath.org/Sci/Modern/JPEG_TI-30X-IIS_SWH2016.htm](http://datamath.org/Sci/Modern/JPEG_TI-30X-IIS_SWH2016.htm)

</comment></comment></comment></comment><comment><USER18> Oh god the cute nostalgia. Shape, buttons, plastic, colors.

I sniped a Canon KS 100 desk calculator at a battery recycle bin, solar, with large buttons too. Couldn't resist. [http://imgur.com/a/6wWUO](http://imgur.com/a/6wWUO)

ps: I also found full on desk calculator (powered, with printout) from Triump- Adler.. funny.

pps: HP RPN forever (twice) dup dup add

</comment><comment><USER19> I just found my old TI-86, TI-89, and HP-48G+ calculators. All of which were great, when I needed them.

What I want to find is my old TI-30X Solar. Basic, bulletproof, and does everything I want a calculator to do without getting in it's own way. Anything more complicated than what it will do I'm likely to use other tools anyway.

<comment><USER20> the T-30s' two-line display is just so perfect. You can always see your last result as you are punching in your next calculation.

</comment></comment><comment><USER21> How coincidental — I wrote a visual analysis of the TI-84 just a few weeks ago for my AP English class: [https://nathanapenglish.blogspot.com/2017/02/tow-20-ti-84-vi...](https://nathanapenglish.blogspot.com/2017/02/tow-20-ti-84-visual.html)

</comment><comment><USER22> How do you clear the memory? You'd think a fourth memory key is needed. Maybe you turn it off and on. Or maybe you go MRC then M-. I think if I was designing this I'd sacrifice the notoriously unnecessary and confusing % key.

<comment><USER9> Hit the On key a couple of times. There is no real off unless you hold your finger on the solar panels. It says On / C for a button to awaken it.

</comment></comment><comment><USER23> I love my TI-84 SE and my TI-89. So much so, in fact, that I have a TI-89 on my phone. I always get fascinated looks when I pull it out and type out a complicated expression.

<comment><USER18> I often use HP 48 emulators too, with great joy.

</comment></comment><comment> trey-jones This is a great piece of writing. I will seek to emulate.

</comment><comment><USER24> I prefer the TI-92, the last of the 'big' calculators.

<comment><USER25> I still have my TI-89 from high school. It wasn't quite the TI-92, but I could still use it on most of the exams which the 92 was banned from. Love that calculator.

</comment></comment><comment><USER26> Must. not. search on eBay.

<comment><USER27> eBay? They're only $9 on Amazon..</comment></comment>


Jesse Jackson to press for more inclusion in Amazon workplace - <AUTHOR> http://www.seattletimes.com/business/amazon/jesse-jackson-to-press-for-inclusion-in-amazon-workplace/ <comment><AUTHOR> I'll be interested to see what he actually says, but if he's not including politicians and the education system in his appeals for more diversity in tech then he really isn't addressing the heart of the issue. Very few politicians can claim coverage on this issue as they have been completely inept over the past 30 years in making sure that our education system is equitable.

Washington State, in particular, has a terrible education system. The differential in teacher salaries in that state is appalling, with local property taxes making up an insane amount of most school districts' budgets (much more than most states). In fact their State Supreme Court is currently holding the legislature in contempt for under-funding the school system.

</comment><comment><USER2> This is pretty asinine. While Amazon is a horrific company to work for for engineers (a very anti-engineering culture, despite the constant propaganda to the contrary they are a retailer, not a tech company. AWS is an exception to the rule.)

Amazon was the most diverse company I ever worked for. Women made up %40 of our engineering teams, and as a white american I was generally a minority.

Their hiring process is totally asinine & incompetent- literally my boss was dealing drugs in the parking garage to other employees during work hours, and his training was a degree in criminal justice, he could barely operate excel-- yet he was in the hiring loop for programmers.

Yet they are diverse.

In fact, diversity is the only thing you can't complain about when it comes to Amazon.</comment>


Introducing a new type of social - <AUTHOR>

The current social networks are based on who you know - and
a. the content gets pretty frivolous (Facebook) b. the content becomes unmanageable (Twitter) c. the network is too restrictive for free discussion (LinkedIN)
We, at ShareCred, imagined a different type of network - how about a network that is not restricted to who we know - but based on the quality of the content shared?
That is why we created ShareCred. Check it out at http://sharecred.com. Currently, you can login freely with your LinkedIN account. <comment><USER2> I have not seen the website- But why does it sound like HN. (Based on the quality of content shared)

<comment><AUTHOR> HN is very good for emitting news, but not necessarily built for a meaningful expression or format. HN serves its purpose well, but does not have the provisions you would want in a network - following topics, authors, seeing the top posts in an area, so on.

</comment></comment><comment><USER3> I'd be happy to try, but don't want to use my LinkedIn to login.

<comment><AUTHOR> Point taken. We definitely will get a registration page going.

But please kindly note that there is not going to be any connection between your LinkedIN profile and your ShareCred activity. It is used only for login.

The reason we felt limiting to LinkedIN logins was a good idea is that it is one way to ensure quality participation. But now, we understand the concerns.

Thank you,</comment></comment>


HireBounty – Make up to 20k referring your network to their next job - <AUTHOR> Something we've been working on and would love any/all feedback or for you to try it out
http://hirebounty.com/
Taking the headhunter model and allowing knowledgeable peers to refer their friends/people they know for bounties.
Usually peers know much better about candidates' capabilities than headhunters and we've set up the system to avoid spam submissions, too (you get limited refers).
On the company side, we're thinking about charging either a monthly fee along with the bounty or just the bounty for a candidate being hired.
We has some sweet referrers signed up for the beta, but would love any and all feedback! <comment><USER2> How much research did you do about other companies who might have tried this in the past?

Are you aware this is like the 100th company to try this and fail?

</comment><comment><USER3> you should offer a 2 level split.

Then people have an incentive not just to refer colleagues that might be interested in the job but that might know someone.</comment>


Ask HN: does a business website (still) need a forum? - <AUTHOR>

I am currently building a website for my future company and I wonder whether or not it is useful today to integrate a forum (for feedback, questions and discussions between users,...) <comment><USER2> Forums are still a great asset for companies. They introduce additional free, and generally high-quality content to a site -- providing an SEO boost, outlet to address customer concerns / questions you might not want to address on your main site, and lots of additional monetization opportunities if that is something you are aiming for w/ your content.

An interesting resource on an adjacent topic is Google's white paper from last summer Winning the Zero Moment of Truth. It provides an interesting perspective on how the ways consumers are making decisions are evolving, and how companies can better become a part of the NEW decision making process. I would argue that forums fit nicely into this new paradigm.</comment>


Durov, Out For Good From VK.com, Plans A Mobile Social Network Outside Russia - <AUTHOR> http://techcrunch.com/2014/04/22/durov-out-for-good-from-vk-com-plans-a-mobile-social-network-outside-russia/

<comment><USER2> What kind of potential do you think Telegram and other mobile messaging apps that encrypt data have?

Specifically, do you think this sort of thing has potentially to provide a virtual form of assembly? To communicate information to the Russian or other censored masses?

What might this kind of technology's shortcomings be?</comment>


Show HN: EastALPR for iOS – Easy Automated License Plate Reader - <AUTHOR> https://easyalpr.com <comment><USER2> I think this is a really cool product but I'm having trouble coming up with a use-case. I wouldn't be able to install this in a parking garage where I have a spot rented. The only obvious use-case I can think of is having a scanner setup at a manned entry gate. What are some other use-cases? Adding them to the website would help sell the product better.

Also, it looks like it requires an iPhone as the camera. Is this the case? I'm unlikely to leave my phone behind setup to be a license plate reader?

<comment><AUTHOR> Hey there, thanks a lot for the feedback and questions.

I agree, the most obvious use case is a scanner setup at an entry gate. Another use case is when on patrol, manually scanning cars that are in a parking lot this goes surprisingly fast when you put your phone on a bike mount.

It does require an iPhone as the camera, and works best with folks who have an extra phone. The idea is this would be cheaper than buying and installing an Axis Camera and associated software. Or it is at least a quicker way to find out if bothering with a more advanced system would be worthwhile.

As far as outside a manned entry gate, I believe this could work in a ruggedized case, where the phone is case is physically mounted to a public township 'welcome' sign and powered.

One interesting aspect of this product is that it can cache scans offline until internet is available again. So a spare phone can be left, say in a ruggedized case, and hidden, listening for a wi-fi network you've previously set up access to. (i.e. a hotspot on your normal device.)

Then when you walk up to the capture device, the phone will connect and the scans will process.

</comment></comment><comment><AUTHOR> Happy to answer any questions about this product.</comment>


Tesla employees fear unsafe conditions at factory, call it modern-day sweatshop - <AUTHOR> https://electrek.co/2020/05/21/tesla-employees-fear-unsafe-conditions-at-factory-call-it-modern-day-sweatshop/ <comment><USER2> Musk doesn't respect his customers. He wants to take the red pill and ramp up production immediately while threatening to move out of California? Not much I can do about it, but that Model 3 I was on the waiting list for is no longer an option for me. There's a couple other cars on the market that will work just as fine.

Musk isn't stupid. He knows people like me will react this way, he just thinks there's enough red state buyers to offset the loss. Good luck to him.</comment>


Follower is a service that grants you a real life Follower for a day - <AUTHOR> http://follower.today <comment><USER2> So pay someone to stalk you? I have seen every startup idea now!

<comment><USER3> My understanding is that the project is the work of the artist and programmer Lauren McCarthy.

[http://lauren-mccarthy.com/](http://lauren-mccarthy.com/)</comment></comment>


Buying Sea Salt? You Might Be a Sucker. - <AUTHOR> http://teddziuba.com/2009/01/buying-sea-salt-you-might-be-a.html

<comment><USER2> No serious chef would ever claim that sea salt has a discernible taste from regular salt; it's the texture that matters. I have certain dishes where I will only use sea salt and other dishes where it doesn't matter.

The iodine issue is true, although you would have to go out of your way to get iodine deficiency living in any 1st world country.

<comment><USER3> Yeah, when you use sea salt, you're not using it everywhere, usually just at the end for presentation - otherwise it's just going to dissolve anyway, so there's no point in using it elsewhere.

And as you mentioned, getting enough iodine isn't that difficult, especially given the amount of salt in most of what we eat, and the ability to get enough with some yogurt, cheese, and eating fish regularly. Besides, if you think you aren't getting enough iodine, just start watching for a goiter! :)

</comment></comment><comment><USER4> Ted says:

 _You can buy 4 pounds of standard issue table salt for $5.37 on the internet. Alternatively, I've seen 4 ounces of sea salt for sale for $2.39. That's a markup of roughly 712%._

Sea salt is 5 pounds for $3, here: <http://www.herbco.com/c-184-salt.aspx>

<comment><USER5> It's not like salt is an expensive luxury item to begin with. What are you going to do with 4 pounds of salt? You shouldn't be consuming more than about half a gram of raw salt a day anyways.

</comment></comment><comment><USER6> The author states there is no metric of quality, "other than not mixed with dirt and glass shards", but then goes on to state that sea salt lacking iodine is a reason to choose one over the other. Does anyone else have an issue with that?

</comment><comment><USER7> Um yeah, and telling other people how to live their lives makes you appear SO intelligent and mature!</comment>


We've Got Boring Technology for IoT. Now Help Us Play 3 Cool Cards - <AUTHOR>

We at GeoG are building a safe, easy and sustainable platform for IoT. We can totally do everything if we put time and effort into it - which we are ready for!
What we want you to do, is start hacking and building things with us. No strings attached!
We recently set up a Community page http://community.geog.co where we want to start listening to you, your needs and suggestions.
Did we mention we have an API? We'd like you to start beaming data and create cool things with us. http://api.geog.co
Also, if you have reasons to hate us, bring it  out! We're listening. <comment><USER2> I looked at the site, I can't really figure out what you guys do.</comment>


Ask HN: Who here would be interested in a free daily updated GeoIP database? - <AUTHOR> I recently was playing around with Maxmind's free GeoIP database but was disappointed at how inaccurate the free version was.<p>I started hacking away yesterday at making an alternative database that seems to be more accurate, but it's still in the works. Who here would be interested in a free alternative, including and excluding cities, updated on a daily basis, and if so, which format's would you like to see? <comment><USER3> (Disclaimer: I work for MaxMind)

As far as formats go, if anyone is thinking of putting together a custom database with information keyed on IP address or IP ranges, I'd encourage you to look into our MaxMind DB format:

[http://maxmind.github.io/MaxMind-DB/](http://maxmind.github.io/MaxMind-DB/)

There are open source file readers available in many languages: [https://github.com/maxmind/?utf8=%E2%9C%93&query=MaxMind- DB](https://github.com/maxmind/?utf8=%E2%9C%93&query=MaxMind-DB)

There's also an open source writer [https://metacpan.org/pod/MaxMind::DB::Writer](https://metacpan.org/pod/MaxMind::DB::Writer)

Our officially supported libraries are actively maintained and pull requests are always welcome.

I'm actually about to begin writing a blog post on how you can create your own custom databases. I'll share it on HN once it's ready.

<comment><USER4> Can you please confirm that the free versions are not 'good enough'? [http://dev.maxmind.com/geoip/geoip2/geolite2/](http://dev.maxmind.com/geoip/geoip2/geolite2/)

<comment><USER3> If you want to compare the accuracy of different products, you can do so on this page:

[https://www.maxmind.com/en/geoip2-city-database- accuracy](https://www.maxmind.com/en/geoip2-city-database-accuracy)

To get the actual product comparisons, you'll need to enter a country in the input box. For instance:

[https://www.maxmind.com/en/geoip2-city-database- accuracy?cou...](https://www.maxmind.com/en/geoip2-city-database- accuracy?country=United+States&resolution=50)

You can try refining the distances to see how the different products compare. If you fiddle with it a bit, you'll see that the results do vary from country to country. So, "good enough" will depend on some combination of your tolerance for error + which countries you care about.

<comment><USER5> It's accuracy but not free

<comment><USER6> I'm not sure I understand. You can use the links provided and compare those results to the results you get from the free version.

</comment></comment></comment></comment></comment><comment><USER7> I'm not sure I want a free alternative. I want an inexpensive option that I'm pretty sure won't get acquired and shutdown, but also has reasonable enough revenue to remain in business, occasionally blessing me with new features.

A free service like locationkit (seen here a few days ago IIRC) looks OK, and I'm reasonably sure it's supported by revenues for other services from the parent company. However, even that feels like it might get shut down if it becomes too big a burden.

Something with a good understandable license that I can pay a reasonable amount ($5-$20/year, for most low-mid volume use cases) would be great, as long as I can really use it for commercial purposes. I had some high hopes for Yahoo services a few years back, but they seemed determined to plague everything with confusing or commercial-hostile licensing.

<comment><USER8> That sounds a lot like some of MaxMind's products.

<comment><USER7> I think it is. I've not tested their quality, but saw their pricing - <USER2> credits then they get used up per API call, similar to Twilio's per minute deductions from a credit. If the OP has a way to best MaxMind's quality,and can charge, that'd be good. But the OP was talking about a 'free' model, which I'm not really interested in.

</comment></comment></comment><comment><USER9> How/where do you get more accurate data than MaxMind does? And under what license do you have access to this data, and under what license would you be able to offer it to others? If all the legal stuff looks right, and the data is indeed more accurate, then of course there's going to be interest in it. I think it would take a while for word to spread and links to propagate, but eventually you'd see quite a bit of sustained traffic on that project. IP-to- location data is a very common need.

<comment><USER10> My only experience with MaxMind was the trouble we had when we got a new IPv4 assignment from ARIN. I filled out the form on their website the first week, our address was in the WhoIS records for our IPs, and our BGP announcements made our location obvious, yet they had our IP's (obviously from ARIN) showing up as originating from South Africa for months.

Seems like anyone who can look at BGP tables and whois information can get more current and accurate data than MaxMind.

</comment></comment><comment><USER11> honest opinion: I hate geoip. I think judging your visitors from their geolocation is more and more becoming a problem. It goes against the fundamental value of the Internet being a global network. I don't want Netflix to sell a sub-standard product in some countries because some licensing foo. I want everyone on this planet to have access to the same Internet.

If I could I would redesign internet routing in a way that the webpage doesn't know where a request comes from.

<comment><USER12> > I don't want Netflix to sell a sub-standard product in some countries > because some licensing foo.

"some licensing foo" is a great way of eliding that in some countries, the service would be _illegal_. The alternative is that the product could not exist at all, if there is no way to negotiate a contract for it.

You can certainly argue that products should not exist if that would involve contradicting some abstract ideal for society, or that it's good for things on the internet to blatantly violate mundane real-world laws until real-world governments become irrelevant. Respectable people hold both of those positions. But they're not very widely-accepted positions.

<comment><USER13> Presume a hypothetical world where everybody's traffic is onion-routed, or at least VPNed. Streaming-content licensing would still happen in such a world—the location-enforcement would just have to happen by other means, like account phone-number verification.

<comment><USER12> That still involves Netflix selling a sub-standard product in some countries, no?

I'm not being pedantic about the argument, I just don't see how there's a benefit to any fundamental values if we still allow this delta, but we're picky about what technical means are used to make it happen. I could see an argument that geo-IP databases are often _wrong_ and that's a problem, but that seems like a very different argument.

</comment></comment></comment></comment><comment><USER14> I use GeoIP fairly regularly. How I would set this up:

\- Free version: only updated once [every 6 months / a year] and non- commercial use only

\- Paid version: $9.99 for a year of free updates

\- Updates come both in diff and in full version (for the commercial version)

\- Use a common format, or use multiple formats. People love csv, but more serious applications probably use an existing format (I see maxmind a lot in this thread).

\- Perhaps an API with heavy ratelimiting for people who need only a very occasional lookup (for very occasional use, I use ip2location.com/demo currently; for more serious stuff I download a database).

Having a free version with a nice license might also get you included in a lot of open source software, which increases name visibility and makes people write parsers for your format of choice.

A minor note on payment: accept Paypal and/or Bitcoin, or I (and many other Europeans) can never pay you. These credit card-only services are impossible to order from.

Idea for the diff: if you have a binary format, perhaps use this: [https://www.chromium.org/developers/design- documents/softwar...](https://www.chromium.org/developers/design- documents/software-updates-courgette)

<comment><USER15> Why is paying with credit cards hard for Europeans?

<comment><AUTHOR> Because the majority don't have/want credit cards.

<comment><USER16> I'm European and I'm yet to find a credit card field where I can't put my debit card number. I'm not sure I understand what you're saying.

<comment><USER14> Debit card number is not your IBAN, right? Because that's the only number on my bank card and it never works (because all forms want your "credit card" number, I thought).

<comment><USER16> Oh, no, it's not your IBAN. It's a number that looks like a credit card number, but the card it points to is actually a debit card.

</comment></comment></comment></comment></comment></comment><comment><USER17> I've been building exactly this:

[http://browserlocation.co/](http://browserlocation.co/)

I have a JS library coming also for use when the w3c geolocation fails. The data is open and downloadable with cities etc (CSV right now). There's a mailing list for updates, and anyone can contribute just by opening the website in a browser!

</comment><comment><USER18> In the EU, the sales tax now (I think, since this year) must be paid to the country, the buyer comes from (before, the sellers country was decisive). Also the height of the tax depends on this. So, at least in Europe there are plenty of small companies that could need such a thing, at least as long they don't have a payment-provider that handles the sales-tax for them.

I myself, could also be interested, but I think, I will leave that to my payment-provider ... (ugly, EU!)

 _Edit: Ok, I should not, but why the downvote, please? When I wrote something wrong, than please explain!_

<comment><USER19> You almost certainly don't want to be using IP geolocation to compute sales tax, rather some kind of billing address explicitly provided by the customer.

<comment><USER18> In that case, the customer could cheat. I am not totally sure about the current discussion on that, but the problem is, that you definitively can not rely on the address given of the customer, because in this case the customer will always give a country with the lowest sales tax. Also you must provide proofs for the location. The IP address is IMHO (and not only my opinion) better and will be more likely be recognized as proof instead of relying solely on some customer input.

But, you (because you are so sure about the best method) by sure know, that the laws are explicitly for non-physical goods, where no delivery-address must be provided, right?

Here is a link, how one company is doing it (forget about government information, they seldom go so much in details!): [https://rachelandrew.co.uk/archives/2014/12/08/consensus- and...](https://rachelandrew.co.uk/archives/2014/12/08/consensus-and-vatmoss/)

They use the IP address to validate the user given address and for later proof.

 _BTW: Downvoting all the time does not help the discussion. I try to discuss this topic seriously and I was bringing some very relevant topic here, and am constantly downvoted. (It is not my fault, that the EU came up with such laws, and provide no useful guide how to implement it!)_

<comment><USER19> In Denmark, at least, billing address is standard for non-physical goods as well. It's validated via the payment method, typically credit card or bank transfer. It's _possible_ to cheat this, too, but harder than just making up a fake address. Afaik none of the main online sellers in DK are relying on IP address currently, in part because accuracy is not good enough, and in part because people traveling across borders is common (many residents of Malmö, for example, have Danish IP addresses during the day and Swedish IP addresses at night).

<comment><USER18> A parallel poster posted an official link from the British Government:

[https://www.gov.uk/government/publications/vat-supplying- dig...](https://www.gov.uk/government/publications/vat-supplying-digital- services-to-private-consumers/vat-businesses-supplying-digital-services-to- private-consumers)

There is clearly stated, that IP information is one of the proofs accepted for the country determination.

So, maybe next time, please first ask before judge.

</comment></comment></comment></comment></comment><comment><USER20> It shouldn't be free, it should be reasonably priced so you don't run out of money and can keep this thing running for years to come.

There's huge demand for it - just search for geoip on Github. Some more pointers are here [0],[1]. So many projects, but most of them work with Maxmind data, which is the problem. Inconsistencies in the data they provide makes it painful to make performant fallback solutions. Performance across geolocations and lack thereof in "exotic" geos is another one. It seems none of these services is deployed across the globe. There's a need for a blazing fast, reliable service with granular, comprehensive data, that is performing well for millions of requests across the globe, be it for mobile or web traffic.

I found a great base[2] and I think Go is a perfect language for this kind of service.

Here are the free checkers I tested the other day, the IP is a good example for incomplete data:

        checkers = [
            'http://freegeoip.net/json/126.96.36.199',
            'http://geoip.nekudo.com/api/184.108.40.206',
            'http://ip-api.com/json/126.96.36.199',
            'http://ipinfo.io/184.108.40.206/json',
            'http://www.telize.com/geoip/18.104.22.168'
        ]

[0] [http://ip-api.com/docs/statistics](http://ip-api.com/docs/statistics) [1] [http://geuis.com/2012/09/21/jsonip-com-close-to- serving-10-m...](http://geuis.com/2012/09/21/jsonip-com-close-to- serving-10-million-requests-a-month/) [2] [https://github.com/fiorix/freegeoip](https://github.com/fiorix/freegeoip)

<comment><USER21> ip-api guy here.

> It seems none of these services is deployed across the globe

Our free service has servers in USA, EU and Asia

> There's a need for a blazing fast, reliable service with granular, > comprehensive data, that is performing well for millions of requests across > the globe, be it for mobile or web traffic.

We have more than 2 billion requests per month!

<comment><USER22> I also recommend this service, been using it for awhile now and It's pretty accurate.

</comment></comment></comment><comment><USER23> That would be amazing. I'd love a datadump that could be accessed on my own servers instead of having to hit an API. The format of the datadump doesn't really matter to me, as long as there's documentation on how to read it.

<comment><USER24> Most geo data providers (like MaxMind) provide datafile downloads so you don't have to use an API.

<comment><USER23> Right, but those aren't usually free ;) On the other hand there are plenty of free (limited) APIs.

<comment><USER25> They do have a free version which is just a bit less accurate than the commercial version.

[http://dev.maxmind.com/geoip/geoip2/downloadable/](http://dev.maxmind.com/geoip/geoip2/downloadable/)

<comment><USER23> Oh, I didn't know that. How much less accurate? Will it accurately determine country of origin?

<comment><USER26> Yes, it will

</comment></comment></comment></comment></comment></comment><comment><USER27> I have long thought that we could do better than maxmind. I have a website with tens of millions of users all over the world that could help you build this database is your want to lead the effort. I imagine showing users what country we think they are in and they correct it if it is wrong.

<comment> mike-cardwell I imagine browser language settings would be a useful indicator too. Not perfect obviously, but highly useful given enough data.

<comment><USER27> That, too. We could use a number of different indicators to help figure it out.

</comment></comment></comment><comment><USER28> So it would be a 'simple' table dump ? Updated daily by adding only the changes ?

I would be interested. Although a service like ip-api.com is not expensive ($8 per month or so if commercial use).

The structure of the data seems very simple: ip address range plus a location, I guess. So maybe just dump as a simple csv text file ? Always easy to process.

You have to make sure the legal side is covered: how do you get your changes ?

</comment><comment><USER29> Mozilla runs an open/free geolocation service: [https://location.services.mozilla.com/](https://location.services.mozilla.com/)

<comment><USER30> [https://mozilla- ichnaea.readthedocs.org/en/latest/config.htm...](https://mozilla- ichnaea.readthedocs.org/en/latest/config.html#geoip) "The geoip section contains settings related to the maxmind GeoIP database." If I don't get it wrong, this service relies on MaxMind's db for GeoIP.

<comment><USER31> The Mozilla Location Service does use MaxMind for GeoIP, but the service's primary use is to map Wi-Fi SSIDs to longitude/latitude position. Mozilla has its own Wi-Fi database continually fed new data from the Mozilla Stumbler app (on the Google Play Store and F-Droid markets) and Firefox for Android. The Mozilla database also has a partnership with commercial Wi-Fi company Combain and the OpenCellID project for fallback results.

[https://blog.mozilla.org/services/2015/03/06/combain-deal- he...](https://blog.mozilla.org/services/2015/03/06/combain-deal-helps-expand- mozilla-location-service/)

(I work at Mozilla and I used to work on the Location project. :)

<comment><USER31> I pitched the idea of Mozilla creating a free GeoIP database by collecting (opt-in) traceroutes from Firefox users to some Mozilla servers. The traceroutes could then be overlaid to create a physical map of the Internet. I know other projects have mapped the internet, but this approach would work from the endpoints in, not from some centralized crawler.

</comment></comment></comment></comment><comment><USER32> A slight tangent but good feedback to OP regardless:

I use MaxMind at work but because we're on the RoR stack, we have to download and commit the massive 30MB databases into our repository in order for it to be used on Heroku. We use [https://github.com/yhirose/maxminddb](https://github.com/yhirose/maxminddb) which seems to be the only good option available that reads the new "mmdb" format. It's a complete pain to have to commit such massive DBs for it to work and would prefer for Rails to fetch the database upon initialization, cache it for at most 2 days and redownload if it hasn't already been restarted by Heroku.

If you can provide a solution to that, it would give us enough value for me to pay a few dollars per month for it.

<comment><USER33> I'm in a similar boat, but just have a license key on the machine (committed) and use the maxmind updater to fetch our licensed db.

It happens once per provision, and a cron job to keep it up to date.

</comment></comment><comment><AUTHOR> On a related note, what's the best way to host big databases for free? As a release on Github?

<comment><USER34> Very interested, but worried that if it's free, it won't last or be maintained, etc.

But in specific answer to this question, if it's really public and free, why not see about adding it to Amazon's public datasets [1]? S3 is fast, durable, available, and I've enjoyed these other data sets.

[1] [http://aws.amazon.com/datasets/](http://aws.amazon.com/datasets/)

</comment></comment><comment><USER35> I would be interested. We _pay_ for Maxmind and still get a lot of inaccurate data.

</comment><comment><USER36> Id be interested, especially if it used same file format as Maxmind's binary dat file ... so it can be a drop in replacement.

<comment><AUTHOR> Added to the list! ;)

<comment><USER37> Another MaxMind employee here ...

Please don't try to use the dat file format. The binary files ending in ".dat" are the Legacy format, which has never been documented. Use the MMDB format linked by oalders in the top comment.

</comment></comment></comment><comment> mike-cardwell I would be very interested in such a thing. Where are you getting your data from? Does it work for IPv6 too?

<comment><USER38> Hmm. Can you determine such things using BGP? I guess that wouldn't be very accurate, though...

</comment></comment><comment><USER39> You seem to be solving a very sought after problem which also makes it so much more difficult. Where do you plan to source this much info?

Can somebody make me understand why ipv4 assignments along with their requests are not made public?

<comment><USER40> > Can somebody make me understand why ipv4 assignments along with their > requests are not made public?

What do you mean? With any of the RIR's you can get it down to a specific company. With ARIN, you're supposed to be able to get it down to a particular customer. What more information do you want?

</comment></comment><comment><USER41> On a related note, would anyone in the community be interested in an inexpensive service that differentiates dynamic from static IPs? Dynamic IPs would be accompanied by an estimate of lease duration.

<comment><USER14> I wouldn't want this to exist because it discriminates my dynamic-looking IP address from server IP addresses (even though mine is statically assigned to my Internet subscription) and I have enough trouble hosting things at home already.

But I understand that's not really an argument: you might say you don't want nukes to exist because they hurt people. I just wanted to mention it.

That said, maybe. Usually an rdns lookup does the trick already though (a4-8e-ef-78.dynamic.ziggo.nl or cpe-12-34-56-78.rr.com or 80-100-131-150.adsl.xs4all.nl is clear enough).

<comment><USER41> Yeah rDNS is helpful, but as you pointed out with your home IP, many dynamic IPs (those that are rotated by an ISP) are actually granted very long leases. The service I'm proposing would make an additional effort to estimate the duration of dynamic leases.

</comment></comment></comment><comment><USER42> Two considerations that help avoid the IP issue, but require user permission and so have a big obvious disadvantage:

1) We can prompt mobile users to enable location/gps and get their location that way.

2) We can prompt modern browsers to allow location services and get their location that way.

This is if a user wants to have their location 'auto-set' instead of via pulldowns.

3) A hard problem to solve is - mapping a unified set of city names to timezones, and updating the timezones as per Daylight Savings Time and general timezone updates.

Anyone have references for 3) ?

</comment><comment><USER43> I'd be interested if it included cities. If there was a javascript plugin to automatically help contribute (is that possible), I'd add it to some of my web pages. CSV is fine.

</comment><comment><USER44> I love a good free service where the data quality is improved. I have played around with maxmind's service a bit but the data for India is far from accurate. I have been hunting for a local database (no service) since I run a IP lookup service [http://ipof.in](http://ipof.in) where I want the service subsumed in. This is a free service for anybody who uses it. It supports XML/JSON and plain text.

</comment><comment><USER45> Have you considered simply contributing to the service at [http://www.hostip.info/](http://www.hostip.info/) ? They seem to be doing what you describe, and have been around long enough to have reasonably good information (in my experience)— I'm sure they would make use of any additional data, or hacking on their backend, which you might provide.

</comment><comment><USER46> There seems to be heavy interest in a low-cost service, even free if it was sustainable. Just curious if anyone has seen innovative pricing around services, similar to how open-source software made expensive software much cheaper or free, where the vendor made the main "service/data" much less expensive but monetized in a different way.

<comment><USER46> So what I'm envisioning are services designed for zero profit. Prices are indexed to AWS/Azure/Google prices; as they fall, the service's prices falls. Customers who need predictable pricing can buy long term contracts, as they do on AWS. Customers who use the service more, pay more, because the service offers utility-based pricing. The goal is to make the service as cheap as possible and maintained by the community. The source code and all data, except private data (e.g., API keys), is open and editable by the community.

Think it would be an interesting way to deliver services and data, just not sure how it turns into a business (since the API/service portion is designed to be zero profit).

</comment></comment><comment><USER47> I would be interested, personally and I believe many other developers would also be interested :-)

</comment><comment><USER48> I prefer csv. I care more about the content it provided, such as location , city, longitude , latitude, isp. In my company, we need a accurate database very much.And now we use IP2LOCATION-LITE-DB11.CSV and ipip.net .

</comment><comment><USER4> I have a domain name you could use localipy.com. Just tell me your nameservers.

<comment><USER49> I like the generosity here but no one in their right mind should consider this kind of offer unless the domain was transferred to them. There's too much risk involved and things that can go wrong unless a domain is 100% owned by you.

<comment><USER4> Right. I have so many names and I never put them to good use :S

</comment></comment></comment><comment><USER50> Tons of devs are interested

</comment><comment><USER51> I'd be interested. I'm not sure daily updates add much value, how often do these things change? If you have a way to provide more accuracy though, that is very interesting.

</comment><comment><USER52> This would be very welcome. Also having SQL load files ready to go would be something that could be very easy to become dependant on and start paying for more frequent updates.

</comment><comment><USER53> I'll echo the "low cost, not free" thought. Stuff takes money to maintain. I don't want to build a service that depends on an unsustainable business model.

<comment><USER54> Maxmind _is_ low cost, not free, and has a pretty good track record. What would you want from an alternative?

<comment><USER27> I would want: \- Easier updates. Now it is a minor hassle to update my MySQL database table from CVS. I need to do it again soon. \- Availability in different formats. For my personal needs, I would love to download a MySQL MyISAM table. \- More accurate data, including "ambiguous country" for employees of multinational firms. \- Related open source tools through github.

</comment></comment></comment><comment><USER55> Yes, one initial download and then subsequent deltas on a regular basis. Will be willing to pay. I know of plenty of Fortune 500 companies will be willing to pay for it.

</comment><comment><USER42> Location to Timezone would be of value to me. No IP involved, want to map a Google Places / Location City value ~ to a timezone. Would pay monthly fee.

<comment><USER56> We offer this at [http://geocod.io](http://geocod.io) :)

<comment><USER42> I took a look thanks. Pricing seems good, however we have a very international audience. We need to get timezones for geocodes (preferably Google Place IDs) from all over Asia and the Middle East.

How good is your global timezone data? Is it possible to map Google Places (from their places autocomplete form) to a timezone?

</comment></comment></comment><comment><USER57> Can you provide some contact information? I would like to contribute as well, I find Maxmind extremely unreliable when it comes to Home ISPs.

<comment><AUTHOR> Shoot me an email at email@example.com and I'll provide you with updates

</comment></comment><comment><USER58> I'd definitely be interested, but I'd also be worried that you could really sustain interest in doing this for a decade.

</comment><comment><USER59> I have a domain I've not done much with that might be perfect for this geoip.io

Let me know if interested or if we could maybe partner on this

</comment><comment><USER57> Can you provide some contact info? Would like to help adding changes, I personally find Maxmind inaccurate as well.

<comment><AUTHOR> Shoot me an email at firstname.lastname@example.com and I'll provide you with updates

</comment></comment><comment><AUTHOR> Thank you all for your feedback, I will continue working on this and make a new post once this project goes live.

</comment><comment><USER60> Me! Once or twice a year I need that stuff on different occasions and each time I find it really annoying.

</comment><comment><USER61> Also see [http://hostip.info](http://hostip.info)

</comment><comment><USER62> Would it be possible to run some kind of GeoIP DB over a P2P/DHT network?

</comment><comment><USER63> Would LOVE this, possibly in json? Id even consider hosting it for you.

</comment><comment><USER64> I think a lot of people would be interested. I'm also curious of the implementation details. Open source? :p

To echo others, aim for low-priced and not free. That'll give you some operating revenue to avoid it going the way of the dodo.

</comment><comment><USER65> We do millions of lookups per day. We do not use Maxmind.

<comment><USER20> Mind to elaborate a little bit on this?

</comment></comment><comment><USER66> hell yes!

</comment><comment><USER67> Note that you could build a simple API with Google App Engine:

[https://cloud.google.com/appengine/docs/python/#Request_Head...](https://cloud.google.com/appengine/docs/python/#Request_Headers)

and it would likely be free if the number of requests was below a certain threshold per month.</comment>


Ask HN: Which languages or frameworks do you like because of their tooling? - <AUTHOR> <comment><USER2> My answer is way too many choices.

I have a problem with systems that let you do one thing in several ways instead of one way. In such a system you tend to use the wrong way for your specific solution. For instance, if there are 5 solutions for you to solve one problem it means you have to check all 5 ways to discover which one is best suited and most efficient. This is not a problem in small problem solving tasks, however when your system grows, this becomes a burdon and a nagging feeling wheter or not you chose the right solution.

I love C as language but dislike it's toolchain because of what I explained above here, it's also why I dislike C++ as whole and many others like Java, Python, Ruby and so on. Too many ways to solve the same thing.

At this moment I feel at home in Golang, it has a nice and simple toolchain and not too many complications in the language itself.</comment>


Ask HN: DigitalOcean API from Android - ezequiel-garzon

Greetings! I'm trying to make DigitalOcean API calls from my Android phone, in particular using Better Terminal Emulator Pro... but this wget does not work with HTTPS. How do you guys go about it? My phone is not rooted, and I prefer to leave it like that.
Thanks!
PS: Things like this make me really curious about Ubuntu Phone... <comment><AUTHOR> have you tried curl?</comment>


Messages for Mac: From Beta to Primetime - <AUTHOR> http://teknadesigns.com/messages-for-mac/

<comment><USER2> I'm reasonably certain that Messages in 10.8 is just as bad as it was during the Beta period.

I still get notifications on every device for every single message I receive. I still cannot send messages at all from one computer - they act sent, and when I haven't gotten a reply I see that they have awesome red exclamation badges.

I still receive messages out-of-order or not at all; these issues occur on freshly installed systems as often as those inundated with outdated bits, at least for me.

Messages.app has only marginally improved since its debut as a beta application, and it is far from ready for prime time.</comment>


SALTO – The Xerox Alto Simulator - <AUTHOR> http://toastytech.com/guis/salto.html

<comment><USER2> Exactly what I also often say:

"The emulator needs a host display greater than 800 pixels high to fit the Alto's 606*808 display. Just to show how far we have not come, many "modern" displays can not quite handle that."

Luckily Apple started with the retina displays. Otherwise we were stuck with low-res displays because "the consumers don't need more."

<comment><USER3> Uhhh, Apple? I'm typing this on a ThinkPad T42p from 2007. It has a 1600x1200 display. They are also available with 2048x1536 (QXGA) displays. These machines were rather pricey when they were launched, but so are those made by Apple.

<comment><USER2> Until recently I've used a Sony from 2001 with the same resolution as your ThinkPad. Still it's not relevant, the quote you reply was, again: "many "modern" displays can not quite handle that." It's about 808 pixels vertically.

In my country, today searching different available notebooks on only one site, I get more than 300 different models with the vertical resolution of 768 pixels which is less than 808.

</comment></comment></comment><comment><USER4> Also pertinent: an emulator of Alto Smalltalk-72 by Dan Ingalls, the original implementor.

[http://lively-web.org/users/Dan/ALTO-Smalltalk-72.html](http://lively- web.org/users/Dan/ALTO-Smalltalk-72.html)

It says that it is emulating the Nova instruction set - the Alto hardware manual at [http://bitsavers.informatik.uni- stuttgart.de/pdf/xerox/alto/...](http://bitsavers.informatik.uni- stuttgart.de/pdf/xerox/alto/..). says that the standard microcode on the Alto emulated the Nova.

</comment><comment><USER5> This is awesome, but ... it's from 2008! A shame it hasn't been evolved since and No additional software was located? I wonder if [http://xeroxalto.computerhistory.org/index.html](http://xeroxalto.computerhistory.org/index.html) has some of the missing bits.

</comment><comment><USER6> Not to be the negative nancy, but the inline thumbnails are awfully pixelated =( Why not just reference the full-size images and set their width/height to 25% or whatever?</comment>


Ask HN: What to look for in a job candidate's GitHub profile - <AUTHOR> What do you look for when evaluating a job candidate's Github profile? What do you value most? What warning signs do you watch out for? Do you skim their activity log or try to analyze commits in depth? <comment><USER2> It's quite hard to gather anything of importance. You have to remember that some of the best candidates work full time on their company's private repos. If they do have their own projects, they might be using a diff VCS. Either way, there are too many variables to make a github have any warning signs, but it's a good data source along with everything else to get a better idea of a candidates background.

</comment><comment><USER3> * Do they have a github profile?

* Have a conversation about what is in it.

Don't expect a github profile to be professional class code. Sometimes it is just a playground.

So to me it is just one more data source to learn about a candidate.

</comment><comment><USER4> Considering how easy it is to fake commits with Git, Mercurial, and maybe others I wouldn't trust must of the information provided in a GitHub profile. You might get a vague idea of the contributions to other projects and the preferences of the coder for coding standards, language, tooling, and silly things like that but don't expect anything serious, as other user commented: some of the best candidates work full time on their company's private repositories. I would also add the fact that some companies have clause in their contracts stating that all code written by the employee during his free time _(aka. side projects)_ is to be owned by the company, I had this clause in my contracts and that is why my GitHub account only hosts experimental projects, nothing serious that I would want an employer to consider in order to offer a position in their company.

</comment><comment><USER5> I was the original programmer at my startup. 7 years later I'm the chief architect. I've had very little time to contribute to open source projects. Any kind of creativity itch I have I can funnel into our product somehow. It would be very upsetting to me if someone got a bad vibe from my low activity on github.

</comment><comment><USER6> You're approaching hiring from the wrong angle. You're looking at evidence and letting that decide what you hiring criteria should be, when what you should be doing is the exact opposite.

Start with writing a set of criteria for the role you want to hire and then measure the evidence against that. So for example if you criteria is "writes well commented code" you could use the candidate's code on github for evidence to support that (although a better approach would be to evaluate a work-sample test).

</comment><comment><USER7> I'm not sure I get what all the cynicism is about. Github can be really helpful for figuring out where someone's strengths lie.

If they are really proud of what they've done, I would want to look at a few sample projects.

If they can explain clearly what their code does, I might even forego a code test. After all, if you aren't paying for the test, you're just wasting their time. There are lots of candidates who won't do an unpaid code test because the subject matter is usually really boring, and they would rather work on something meaningful.

I suppose anything can be faked, so I would be asking myself if their story matches what's on the Github profile. If it doesn't, then what you're seeing is probably fake. If it does, you can use it as a springboard to ask more questions.

</comment><comment><USER8> If they have a project that they list on their resume that is also on their github, then take a quick look. Just enough to decide if you can ask them questions without getting their input first.

Also, if they list a bunch of languages, but they don't have examples in those languages, then have questions about that. (there aren't very many polyglot shops)

Remember, to become a rockstar cpp programmer [https://github.com/avinassh/rockstar](https://github.com/avinassh/rockstar)

</comment><comment><USER9> I don't look at GitHub profiles unless a candidate specifically mentions something they are proud of. In that case, I scan the project they are proud of with the most charitable outlook I can.

Most of the best developers I know either have no GitHub profile or have profiles that are full of noodling that is not indicative of their output.

</comment><comment><USER10> Honestly, it should only matter for New Grad positions. Why would it be relevant beyond the new grad position?</comment>


UK citizen sues Microsoft over Prism private data leak to NSA - <AUTHOR> http://www.computerweekly.com/news/2240210455/UK-citizen-sues-Microsoft-over-Prism-private-data-leak-to-NSA

<comment><USER2> It would be "interesting" if Microsoft's lawyers analyzed the law, concluded they were guilty of violating British law, and plead guilty at trial.

If Microsoft were as concerned about their data integrity as they seem to have been goaded into, after learning that pipes between their data centers were monitored by the NSA, you might reasonably think that they were concerned about the integrity of _all_ their data, including that data in other countries that the NSA compels them to share.

I think pleading guilty to cases like this would be enough of a shock to the system that governments, including the US, would be forced to rethink their clever scheme to break the internet and treat the world's citizens as enemies.</comment>


New features in C++17 - <AUTHOR> https://stackoverflow.com/questions/38060436/what-are-the-new-features-in-c17 <comment><USER2> I've always wanted to get back into programming in modern C/C++ (C++14 onwards).

It's been a long while since I've programmed professionally in a statically- typed language.

Are there any resources that would help one getting started with a Modern statically-typed language?

<comment><USER3> Assuming you already know C++ 03, C++ 11 / 14 / 17 aren't that difficult to pick up. Just get a compiler and start writing software. I'd say the most difficult area is templates, but templates are just difficult in general.

As a C++ developer, I always find it funny that people from dynamically typed languages such as JS are ever interested in C++. It's SO much more difficult to develop GUI-based products in C++ than in just about any web stack.

On the other hand, type safety is a great thing. I long for the day when I can do web apps and desktop apps with the robustness of C++ but the flexibility of HTML/CSS/JS. ( I'm not talking about bloatware like Atom/Electron. )

There are days when I wish I'd never learned about 'owner draw'.

<comment><USER4> Qt is a very robust GUI framework in a C++ environment, but since version 5.0 allows fast UI development using a scripting language called QML that interacts well with its C++ underlying engine. It's like designing for the web but with a lot of extra perks.

Barring that, there is also Elm for static web GUI programming which is worth a look.</comment></comment></comment>


The World's Most Advanced Bionic Arm - <AUTHOR> http://www.wired.com/science/discoveries/news/2007/08/bionic_arm

<comment><USER2> This is important research for robotics generally.

You'll note something in common with most deployed robots: \- Aibo is a toy that plays around. There is no function so there is no way it can fail. All robot toys are in this category. \- For vacuuming robots the biggest interaction with the environment is bumping into things. But they are autonomous. \- UAVs use GPS waypoint navigation and have nothing to interact with. There is usually no obstacle avoidance. \- Bomb disposal robots are fully teleoperated. The hands are usually pincers.

None of these robots have rich interaction with their environments. This is because the perception, planning, and mechanics of manipulation are much harder than locomotion tasks.

Bionic hands will need tiny sensors that allow for input of texture, pressure, temperature, etc. They will probably have series elastic actuators that allow for compliance in grasping and higher reliability.

This is important work.

</comment><comment><AUTHOR> I find this story fasinating, especially with the numbers of soliders living with lost limbs around the world. I'm curious about how robotics will be included into the mainstream in the future.</comment>


Beta Raspberry Pi PCs Draw Big Bids On eBay - <AUTHOR> http://techcrunch.com/2012/01/02/beta-raspberry-pi-pcs-draw-big-bids-on-ebay/

<comment><USER2> The big bids are just cashing in on the hype that has been build up over this.

I'm also eager to get one, but I think it's at least an year until it will be in a usable state as a product.

This would be a perfect in-laws replacement computer. With some Linux and Chrome on it, it would make a decent browsing computer. This is basically the price-point I would expect for a Chromebook box. Just add the old peripherals and you're done.

Right now though it seems to target more of an Arduino enthusiast.

After it gets a proper box and some official OS support (say, some Ubuntu Raspberry Pi edition) it might have a chance to go mainstream.

Speaking of mainstream, Flash might be a bit of a problem.

<comment> Tim-Boss Without support for Flash I'm not sure this could realistically be considered a "browsing computer", especially for less-than-technophiles!

<comment><USER3> The iPad doesn't support Flash and plenty of less-than-technophiles use it as an everything computer.

<comment><USER4> What does the "don't have flash" stub look like? Does the ipad recognize embedded flash and show a friendly explanation or is that left to the site?

<comment><USER5> If the site doesn't have a helpful explanation, there is a blue lego piece with a question mark on it. I cant remember if there is anything else.

</comment></comment></comment></comment></comment><comment><USER6> The reason prices are so high is because it is a charity event.

"All the money raised from this auction will be put straight back into the Raspberry Pi Foundation, and will be used to fund its charitable activities."

</comment><comment><USER7> Argh I'm so looking forward to the production version getting released.

I wish they didn't post so many of these updates as it's making me sad that I probably won't be able to buy one for at least a year

</comment><comment><USER8> Does anyone else think that this is because of entrepreneurs with Raspberry Pi-utilizing ideas that are eager to begin working with it?

<comment><AUTHOR> I fall to that camp. Just curious, can anyone recommend any good starter, practical, book on single board computers and/or micro-controllers from the perspective of programmer?

EDIT: I even think of attending university majoring in electrical engineering, but I think it's overkill (I'm a BCompSc).

<comment><USER5> I don't know about books, but there are some similar single chip computers out there. You may want to take a look at the beagleboard and the beaglebone. I think the difference in both of those is a slightly higher cost, and slightly less good gpu (if they have a gpu at all, I am not sure).

I would just get an arduino and start messing around. While electricity is black magic to me, the programming end of microcontrollers is pretty easy to understand.

<comment><USER9> Rather than the beagleboard and other related systems, I'm now recommending the Trimslice (<http://trimslice.com/web/>) heavily. Picked one up a couple months ago and I absolutely love it. It's become my go-to ARM dev box.

<comment><USER10> Trimslice is significantly more expensive though.

If you're a complete noob like me and still have difficulty reading electronics diagram, or sketchy on how transistors work, then get a cheap hackable arduino until you're ready for the more adventurous stuff.

HD video might be out of reach, but you can output to TV (see gameduino). Processing is limited, but you can ship processing to a server via ethernet (see nanode). Storage is limited, but you can have SD card shields (or use a remote server). Or how about radio control (see nanode RF <http://http://nanode.eu/>)?

Plus an arduino might be a nice companion with a Pi/Beaglebord/Trimslice for remote sensors or remote control. or maybe Lilipad arduino for wearable computing apps.</comment></comment></comment></comment></comment>


Mom's Instagram account shut down over breastfeeding selfie - <AUTHOR> http://www.cbc.ca/news/canada/manitoba/mom-s-instagram-account-shut-down-over-breastfeeding-selfie-1.2640768 <comment><USER2> Instagram's argument is that the picture contained child pornography. The picture was of a topless toddler breast feeding, which (for anyone with kids) is a perfectly normal sight.

I cannot comprehend why so many people get uncomfortable by the image of a breastfeeding mother or a toddler that isn't fully dressed. As a parent and a husband to a mother that is extremely comfortable with breastfeeding, I am saddened for all other mothers who are made to feel ashamed of such a natural activity.</comment>


Ask HN: Where can I improve my graphic design skills? - <AUTHOR>

All the logos and designs I'm able to produce look like they're from 2007, are heavily gradiented, and lack subtlety. I would like to be able to make more modern logos and designs. Are there any good websites or books for learning how to design elegant graphics and landing pages? I'm working in Photoshop CS5 by the way. <comment><USER2> <http://www.amazon.com/gp/product/1592532616/>

This is a general design book, but one that is _packed_ full of information and examples that you might find helpful. It's not a how-to book, but if you feel like you can recognize "good/great" design, but can't really produce it yourself: this is your book. You won't look at anything visually creative the same way again.

Otherwise, consider: "when all you have is hammer, you treat everything like a nail". People, myself included, tend to stick with what they know and are comfortable with. It's no surprise that all your designs end up looking similar: you're probably using the same tools in Photoshop and the same techniques. No tutorial is going to directly help you create "elegant graphics" in any meaningful way, but there are certainly great tutorials out there that will expose you to new techniques and skills which will broaden your personal toolbox.

Having a broader toolbox or skill-set makes new things possible that previously you might have not considered.

<comment><AUTHOR> I just got this and it's phenomenal. This is exactly what I needed, thank you so much.

</comment></comment><comment><USER3> Hi, a good resource can be found on <http://psd.tutsplus.com/> but you need to practice practice and more practice, and by the way logos are usually created in a vector program like Adobe Illustrator in order for them to be 'print ready'

</comment><comment><USER4> <http://www.dribbble.com> is my favorite source right now for inspiration. Tons of extremely talented designers.

Some of my other favorite resource: <http://www.smashingmagazine.com> \-- great showcases <http://vandelaydesign.com/blog/> \-- inspiration and tutorials <http://twitter.com/#!/TheSash/designers> \-- a list of awesome designers on twitter

<comment><USER5> I think the more someone looks at Dribbble, the more their work shows they've been viewing Dribbble too often. Sure, there are trends, and then there is good design, and the line is blurry in most. But, a lot of stuff on Dribbble is the same texture, pattern, noise, over and over. In short, I think looking outside of the web for inspiration can help designers not rehash the same design techniques over and over.

</comment></comment><comment><USER6> I use all if not most of the sites folks mentioned. But I took your question of learning to mean interacting with others (forgive me if I am wrong). I came across P2PU 'School of Webcraft' that might be worth a look-classes pick up again in April.

Here is the link to the school: <http://www.drumbeat.org/p2pu-webcraft>

and to courses: <http://p2pu.org/webcraft> \-- good luck!

</comment><comment><USER7> good to know you got PS CS5 to play with. i suggest you google few hours for web2.0 design theories and concepts, like - how to create web2.0 effects with photoshop, glossy text/image effects, reflections effects, how to create nice gradients. watch videos, listen podcasts, go through listapart articles if you have time <http://www.alistapart.com/topics/design/> tune up your design concepts first.

you can practice with vandelaydesign photoshop tutorials list. <http://vandelaydesign.com/blog/photoshop-tutorials/> choose the one easy for you to begin with.

and once you master these basic skills, you can then search for "design inspiration" around the web to see how other designers are making web beautiful. when you understand the design principles, design tool becomes just a matter of choice. all the best.

</comment><comment><USER5> Is your problem not knowing what it is you want to create (or, what an "updated" version of that design would be), or do you not have the skill set to develop what it is you want to create? Or both?

<comment><AUTHOR> Both. For instance, on a lot of the YC and newer startups (I can't really cite them from memory) you see these really nice background patterns on landing pages, however, I have no idea how they are made. I have very little formal training as far as graphic design is concerned, so while I might be able to make a pretty logo following a tutorial I'm afraid the fundamental structure of the page will be bad.

Someone on this thread recommended a book called Design Elements, and it's great and just what I needed actually.

<comment><USER5> So, I think reading about design is a great way for you to learn the basics and principles (I highly recommend The Non Designers Design Book).

Once you read that, then I would suggest to start reading some well known web magazines, maybe like Smashing or VecTuts/PSDTuts to go through some tutorials and help you understand just how people use noise on a button, or a drop shadow on a button, etc. Then again, I think these things are sometimes over the top and used because it's trendy. But, you can make your own decisions.

A lot of people just use Photoshop patterns made by someone else for those background images ([http://patterns.ava7.com/tag- beige.php,http://designm.ag/res...](http://patterns.ava7.com/tag- beige.php,http://designm.ag/resources/650-free-photoshop-patterns/)). Find a pattern, fill > pattern, tada!

</comment></comment></comment><comment><USER8> Try this site for inspiration: <http://www.webdesignerdepot.com>

</comment><comment><USER9> there are tons of awesome books on amazon - look for the bestsellers and highest reviews.

One that helped me with logos is: Logo Design Love

I also liked the Classical Effects in Photoshop. Foe websites: I liked CSS Mastery and on the cssgarden as well as reading alistpart.

<comment><USER9> edits:For creating awesome websites: I liked CSS Mastery and I like reading cssgarden.com and alistpart.com for ideas.

I also like to take existing websites and redo them to make them better just for my own pleasure. And if I really am pleased, I send them to the company in case they can use it.</comment></comment>