Daily Life with the Offline Laptop - <AUTHOR> https://dataswamp.org/~solene/2020-02-18-offline-laptop-v2.html <comment><USER2> There was a time when I had a computer that didn't have a working network card. I would take it to the library with me, and I would be incredibly productive during it. If I got stuck on something, I'd work on something else instead, and look it up when I got home.

I also tried doing what I called an "Internet Diet", of self-imposing working offline, and as long as I stuck with it I got a good amount done then also. In fact one thing I noticed was that if I didn't let myself have the internet, I'd start to get bored, and would naturally open up a code editor or text editor and start writing, or at least organizing the files on my hard drive or even just reading a book.

My main problem are my jobs, though. If my job absolutely requires the internet in order for me to do my job (and right now it absolutely does), then the distractions are just a few clicks away, tempting me, and I fall into its trap.

Time to get off the internet, at least for a bit.

<comment><USER3> ...or EVEN read a BOOK.

Aspiring authors offer up a collective sigh.

But there are movies, still.

By the way, has anyone seen the 37th remake of Superman? Sorry, I meant 36th.

Hey, anyone want to invest in a new movie idea. It's gold. It's only been done 36 times before. Don't delay. You won't believe what happens at the end. Lois Lane loses 30lbs with 1 crazy dieting trick that big-Doctors don't want you to know about.

Time is running out. Don't wait. There's no time to read that book, you're missing out.

<comment><USER2> I do read books. Nowhere near as many as my wife, who's read 16 books already so far this year, but I do read books.

I've finished three books so far this year. The 3rd and 4th books in The Expanse series, and Stories of Your Life and Others by Ted Chiang (which includes the short story that the Arrival movie was based on). I'm about 4 chapters into Don Quixote also, which I decided I'd finally read this year.

And that's with the following distractions:

* Letting myself enjoy and complete a 25 hour visual novel video game (AI: The Somnium Files, for anyone curious)

* 15 hours of training to be an ESL tutor

* Preparing lesson plans and meeting with my ESL Learner on a weekly basis

* Taking a 6 week travel writing course at my local library

* Polishing up 4 different board game prototypes, writing rules, filming videos and entering them into two different game design competitions

* Coding two different video games I'm hoping to release sometime this year

* Writing a first draft of a short story for an annual short story anthology that my local writing group does every year

* Hosting a monthly playtest night for local game designers

* Having a wife and two dogs that demand time and attention every day

* Working at a company that has 1-2 network outages each week (at least the past month and a half) that requires me to sit for hours after work coordinating with network and server teams to fix the issue

* Getting mentally prepared and brushing up technical knowledge for the inevitable interview gauntlet I'll need to undergo to find a new job.

I'm sure there's things I'm leaving out. This is all since January 1st this year, btw.

I also write novels off and on, I just don't have any finished yet. Lots of first drafts from participating in Nanowrimo for 10 years. It's a lot harder for me to revise and finish them, though, especially with juggling all my other interests (game design and development usually takes priority). Planning to attend a writer's retreat in two weeks to try to get one in a state that I don't mind other people reading it and giving feedback.

Also despite all this, I waste a ton of time on the internet and really need to nip it in the bud if I want to keep juggling so many balls in the air. And I do still see most Marvel movies. Not DC movies though, except Shazam!

</comment></comment></comment><comment><USER4> No affiliation, but I found Dash incredibly helpful for working offline: [https://kapeli.com/dash](https://kapeli.com/dash). You can download the docs for most languages/frameworks AND you can download Stackoverflow by section in a way you can read and search.

<comment><USER5> Pity it's mac only

<comment><USER6> Check out Zeal, which piggybacks on Dash for Linux and Windows: [https://zealdocs.org/](https://zealdocs.org/)

<comment><USER7> Funny, I've been looking for something like this, without knowing that I was really.

Unfortunately I am getting "Content rendering error An unhandled error occurred in the application. We apologize for the inconvenience!" for the HTML, CSS and JS references.

edit: That appears to be a bigger issue which has been discussed for some time by a few people ([https://github.com/zealdocs/zeal/issues/1155](https://github.com/zealdocs/zeal/issues/1155)).

      find ~/.local/share/Zeal/Zeal/docsets -name "react-main.*.js" -exec rm -rf {} \;

here's a fix that worked for me on Manjaro (Linux) for the time being.

<comment><USER8> Try [https://devdocs.io/](https://devdocs.io/) instead. browser based and offline*

I refresh it before every long haul flight.

* Uses localstorage and sometimes can be cleared.

</comment></comment></comment></comment></comment><comment><USER9> much respect for keeping a PowerBook in use! I keep my 12" PowerBook around for similar uses: Music (iTunes), email (Mail), writing (TextEdit), development (also TextEdit haha). Amazingly TenFourFox (Firefox fork) is still being maintained! It's impossibly slow but that can also be an advantage. I'm still thinking about that post recently where someone said they add a few seconds to a page load. Well, an easy way to do that is to just use old hardware! It's nice to have the internet if you need it, but it's slow enough to not be addictive...

<comment><USER10> What sort of development do you do on the PowerBook?

<comment><USER9> Mostly basic plain HTML/CSS pages for teafry.me but sometimes some python I run on a raspberry pi over ssh.

</comment></comment></comment><comment><USER11> A month ago i canceled my broadband internet at home.

I survive now with 7GB LTE data and public WiFi.

That was the only solution for me to get out of the habit of mindlessly browsing the web, watching YouTube etc...

So i have 230MB Data per Day, that's enough for me to get work done and some casual browsing.

If i wanna watch a YouTube video i have to get out out of the house, walk to the next WiFi, download it, go home and watch it.

<comment><USER12> I have often considered doing this myself. My current browsing habits are a disjointed, site-to-site flitting mess that leaves me less informed and more annoyed.

\- Open Reddit/FB/IG, browse briefly

\- Switch to a news site, scan headlines, get irritated with almost-clickbait headlines

\- Switch back to Reddit/FB/IG by reflex, even though I know nothing's changed.

The last time I lacked near-24/7 internet access was when living abroad in 2007. I'd go to an internet cafe daily, where once I was done with emails, IMs etc, I'd save a folder of HTML pages (mainly message board threads) to my USB drive for offline reading. It made my browsing experience much more time- efficient, as my Internet use had a clear starting point and an ending point, sort of like a newspaper.

</comment></comment><comment><USER13> There is an awesome pdf manager and web page capture softwar [https://getpolarized.io/](https://getpolarized.io/) . It supports offline mode, but as of now there is a bug that needs to be worked around by logging out. It supports taking anki notes and syncing too.

</comment><comment><USER14> Holy crap, I thought I was the only one in the _world_ still using a PowerBook as a daily driver to keep myself away from the temptations of the Internet...I'm a huge fan of 1999-2005 PowerPC Macs.

</comment><comment><USER15> I like working offline and do it frequently. In fact, if I would just turn off my tethered 4G right now, I would get a _lot_ more done and be much happier with myself. Will be doing just after I finish typing this :-). Because I use my computer primarily for programming, the biggest thing I need are docs. In that respect, I've found that working with Rust is amazing. Installing all the normal documentation you need and then going offline is so incredibly easy. Anyway, massive shout out to anyone that pushed to make that dream a reality!

<comment><USER16> I use a tool called Zeal on linux which makes using docs even better than in a browser since its pretty much instant.

<comment><USER15> I have used this in the past with Ruby. I liked it well enough, but I was frustrated trying to get the right versions of things (I world on some older code bases -- including Ruby 1.8 :-P ). Getting all the ri docs for things that are 10 or more years old is incredibly painful. I could potentially build them myself, but that is also surprisingly painful.

The thing I like about Rust's setup is that things just work out of the box. `rustup doc` opens a page containing the Rust book, Rust by example book, all of the API documentation and more -- all for the version of Rust that I currently have installed. `cargo doc` builds all of the documentation for all of the crates that I am using in my current project. All of the documentation is for the versions of the crates I'm using. It's just very seemless.

The really cool part of the Rust docs is that all of the API documentation (and crate documentation) has links to the source code. So if I can't understand what the documentation is saying, I can read the code. It's incredibly helpful. I must use that feature 5 or 6 times a day.

But, yeah, Zeal is quite useful and I really should set it up again for my Ruby stuff.

</comment></comment></comment><comment><USER17> I find [https://devdocs.io/](https://devdocs.io/) very useful for offline access to Python documentation (and many other languages too)

<comment><USER18> Or just download official documentation for offline usage: [https://docs.python.org/3/download.html](https://docs.python.org/3/download.html)</comment></comment>


Accel.com having mysql errors - <AUTHOR> http://accel.com/

<comment><USER2> Thanks. I told the right person about it.

John.</comment>


Linux kernel compilation - <AUTHOR> https://github.com/0xAX/linux-insides/blob/master/Misc/how_kernel_compiled.md

<comment><USER2> Modulo typos and English errors, this is how a piece of software should look. Readable for the programmer.

Besides Knuth literate programming I've seen only one piece of software that looked as readable: the disassembly of Sinclair Spectrum ROM. Virtually every CPU instruction had a comment with it.

<comment><USER3> Looks bad to me. I would prefer a prose design overview and code separate.

Comments like this always go out of date because people don't reread every comment when they make a change.

</comment></comment><comment><USER4> 666 lines, is this the definitive guide?

<comment><USER5> No this would be the definitive guide: [http://www.kroah.com/lkn/](http://www.kroah.com/lkn/)</comment></comment>


Ask HN: Recommendations for free and open source HTML application templates? - <AUTHOR> I'm wanting to find free and attractive start points for my applicaton UI.
There's so many spammy links when searching on this topic though.
Can anyone recommend really good free HTML template resources for building attractive sites and applications? <comment><USER2> Open Source.com had a few of these up the other day. Have a look through their articles.</comment>


You don't want quality time, you want garbage time - <AUTHOR> https://avoidboringpeople.substack.com/p/you-dont-want-quality-time-you-want <comment><USER2> It's this just a quote? The rest of the content on the page doesn't seem related.

<comment><USER3> There are 3 topics covered in the newsletter. It's number 3, scroll down.

<comment><AUTHOR> Yep thanks for pointing that out! It's the last of 3 main topics in the post

</comment></comment></comment><comment><USER4> I became familiar with the term "quality time" as a contrast to "quantity time," regarding child rearing. As both parents began working outside of the home, and less time was spent with the kids, parents tried to ease their guilt by ramping up the quality time. This really doesn't work, and I agree with Al Franken: ""Parenting is the hardest job you'll ever love. First and foremost, being a good parent means spending lots of time with your children. I personally hate the phrase 'quality time.' Kids don't want quality time. They want quantity time, big, stinking, lazy, nonproductive quantity time."

[https://www.nytimes.com/2015/04/04/upshot/upshot-letter- our-...](https://www.nytimes.com/2015/04/04/upshot/upshot-letter-our-anti- parenting-bias.html)

<comment><USER5> I think people just have different ideas of what "quality time" is.

The definition I've always used is roughly:

If I'm sitting right next to my kid and ignoring them, that's not QT. If I'm sitting right next to my kid and interacting with them, that's QT.

Even if I'm doing household chores, if my kid is watching and I answer questions they have about what I'm doing, that's QT. If I let them help out, that's QT. If I say "go in the other room and watch TV so I can get this chore done" that's not QT.

Some people seem to think if it's not a planned-out highly-structured nutritious, fun and educational activity, it's not QT which is not how I ever interpreted it.

<comment><USER6> Some of my best memories of my dad are of us sitting together every week watching Kevin Sorbo run around as Hercules.

Don't completely dismiss "garbage" time!

<comment><USER5> Absolutely. I spent time reading a book next to my dad who was reading a different book and enjoyed that. It doesn't count under my definition of QT though.

Watching TV _might_ though, particularly when we talked during the commercials.

</comment></comment></comment></comment><comment><USER7> It's unfortunate that "quality time" has come to have similar meaning to "Kodak moments". Quality time is just time spent being comfortable. It's when your soul gets some rest, and you look up at the end of the day and think "Wow! Night time already!". Whether you spent that time collecting butterflies, blasting aliens, or looking at clouds, is irrelevant.

It's nice to spend quality time with people you care about, because those times together are a slow bonding process.

<comment><USER8> I feel this whole era has been trying to game the metrics and forgot about the real thing.

Good times => photos. So more photos => more good times. QED

<comment><USER9> I wonder if children being born over the last decade will come to despise taking photos, because from their first memory they have been constantly interrupted at play by mom or dad trying to get their attention for a picture. My niece's every trip to the playground is documented in photo and video; she looks down from the playset not at her mother's face but at the back of her mother's iPhone.

<comment><USER10> I had the same thought. Sure, I take photos of my kid, but sometimes I might go weeks without taking a picture of him (Oh my, the horror!). Then people bug me that I haven't taken any recent photos of him for a while and I can't help but think, "yeah, because I was too busy having fun to take a picture." And if I do decide to take one, I usually try to snap it discretely when he's not looking so I'm not interrupting his play. I also show them to him later and he likes looking at them, or a video of him going down the slide.

It's the same when I go on trips. I go on vacation then come back and realize I only took maybe three photos on the first day and that was it.

I think people take photos when they're not having fun so they can look back later and pretend they were.

<comment><USER9> It's funny that the old point-and-shoot film cameras everyone used in the 80s and 90s were perhaps the best way to actually capture what's going on rather than turning a photo into a big production.

You'd hold the camera in your right hand and prepare for the picture by cranking the film with your thumb. When you wanted the picture, you'd quickly raise it to your eye and take the shot. There was no waiting for focus, because they were all set to infinity focus. They used simple analog light sensors to set the exposure the instant you pointed the camera.

With a phone, you might raise it to your face so FaceID will unlock it, then you look for and open the camera app, then you're using both hands to hold the phone out in front of you and wait while it focuses and figures out exposure; if you're using a cheaper phone, this could be several seconds. Then you take the picture and, again, if you're not using the freshest iPhone it might take 1-2 seconds between tapping the shutter button and actually being sure the picture has been taken. It's intrusive and slow.

Photos from my childhood often feature me either looking at something else or having _just_ turned my head to look at the camera because my mom called to me. Photos today often seem to have a more posed and unnatural feel to them, because it's difficult to take a good picture stealthily; "hang on, I'm going to take a picture" is the common refrain.

<comment><USER11> I know that a good photographer can take a good photograph with anything, and a bad photographer myself won't be improved by better equipment. Still... I took exclusively dreadful photos with those cameras.

Part of it was that film was a barrier to practice. Results took days to produce, and the sum cost of film and processing quickly became higher than the camera itself. So I'd use up a roll of film, send it off, get depressed at the results, and quit. I was "in the moment" at those events because a camera would not have made happy memories.

With practice I might have eventually learned something about composition, but I don't have fond memories of those cameras. It's only now that I have a camera with me at all times, and a computer struggling to adjust my shots to some kind of artistic merit, that I have become the sort of person who takes photos at all.

<comment><USER9> I'd say there was a difference between taking pictures so you had a visual memory of the time you visited Hoover Dam with Grandma, vs. taking pictures because you want an artistically meretricious result. I would say almost none of the photos in our family albums are worth sharing on account of composition, but the contents are valuable to me because they show my grandfather (dead 25 years), they show my dad at 25 standing in front of the horse trailer in which he briefly lived while herding sheep, they show me playing on the steps of a home I only vaguely remember from the LORAN towers I could see blinking from my bedroom window.

<comment><USER10> In my experience, anyway, you're absolutely correct. The family photos from my childhood that I've enjoyed the most are almost all either blurry, out of a focus, or just too dark/light. It's not the quality of the photo that anyone cares about.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER12> For me, the concept of "quality time" only really applies to work. You can be "in the flow" and get a lot of stuff done in 2 hours that might otherwise take weeks to build. And in the context of work, there are factors (organized, bright, distraction-free room) that you can optimize to make it more likely for you to have a short, but high-quality work session.

But for free time, I don't get it. The whole point of relaxing is that you stop worrying about getting things done, so there should be nothing left for you to measure to determine the quality level.

If you can measure the "relaxingness-level" of your free time, you're playing make believe for other people.

The quality of your instagram photos is probably inversely related to how relaxing the vacation was. When you're asleep at the beach all the time, there won't be any photos to show for it.

</comment><comment><USER13> That's a very confusing page layout with not so good news design. I'm sure the content must be nice, but I couldn't focus at all.

</comment><comment><USER14> This reads like it was written by someone on a coke binge.

</comment><comment><USER15> Imagine putting a paywall up on your personal blog.

I can't imagine people reliably get invested in your content if you're blocking them from reading the top three posts.

<comment><AUTHOR> If you're interested in reading them I can forward any of the paywalled ones to you :)

</comment></comment><comment><USER16> Random never made me happy.</comment>


Politics, free trade, violence - <AUTHOR> http://www.antipope.org/charlie/blog-static/2010/03/politics-free-trade-violence.html

<comment><USER2> The Labor Theory of Value, which is the intellectual basis of Marxism, makes no sense.

The claim is that the value of an object is equal to the labor put into it. That means a dell laptop orbiting Jupiter is worth infinitely more than my flat screen TV, because the TV took far fewer hours of labor to produce.

Austrian School economics, on the other hand, argue that value is a subjective construct - and that each person values things differently. That is why trade is so good - people who value A more than B trade with people who value B more than A.

<comment><AUTHOR> This is not what disturbs me. What disturbs me is the idea that international travel may soon be so difficult as to become impractical.

</comment></comment><comment><USER3> Site currently overloaded. Google cache:

[http://18.104.22.168/search?q=cache:http%3A%2F%2Fwww.antipop...](http://184.108.40.206/search?q=cache:http%3A%2F%2Fwww.antipope.org%2Fcharlie%2Fblog- static%2F2010%2F03%2Fpolitics-free-trade-violence.html)

Here's part of the central point, which Charlie partially bolded in the essay:

 _...labour wants to migrate where working conditions and pay are best. Capital wants to invest for growth where working conditions and pay are worst.

By penning us (the labour) in, capital can maintain, for a while, the wage imbalances that maximize profit..._

I have a similar reaction whenever someone raises praise of "the free market" particularly on a global scale. It doesn't exist.</comment>


Saw your gem on Github, so I thought I'd release it - <AUTHOR> https://github.com/nathanscott/traffic_control/issues/1

<comment><USER2> That's what Linux package maintainers do, no one seems to have a problem with it.

Public code is public. As long as the licenses are followed and/or credit is given who cares?

</comment><comment><USER3> So is this accepted practice in Ruby circles? It seems pretty bogus to me.

<comment><USER4> why?

<comment><USER3> It seems pretty crap to just unilaterally make decisions regarding someone else's code.

<comment><USER4> I'd agree with that statement - however I really don't feel that that happened here. I guy did they a favor, and wanted to give them ownership over it. Im sure he would have removed it if requested.

<comment><USER3> Fair enough. Clearly I misunderstood what I was looking at.

</comment></comment></comment></comment></comment><comment><USER5> Is this good or bad in ruby circles?</comment>


For what would you use knowing real-time density around you? - <AUTHOR>

I am playing with the idea of an app displaying real-time density of people to map out where and how many people are in a location (anonymously).
Would there be a situation where you think this could be useful?
As a recent encounter (travelling for holiday), I figured that it would be nice to see where people really are, mainly because I got hugely disappointed by biased Foursquare and Tripadvisor recommendations.
Any suggestion/experience for when knowing real-time where the crowd is could be useful? <comment><USER2> -I would use it especially when I'm in a foreign town, in order to find some activities based on the population density.

-As suggestions:

->I would like an atmosphere feeling (comments about the activity or some photos)

->Also I would like to have a special identifier for my friends (that I added in this application)

->Maybe it would be nice if the application could add my location to facebook, and to let me tag friends from this application

->Maybe, in the future, I would like the activities to be categorized (music, movie, party, etc)

<comment><AUTHOR> that's very interesting, we were pondering about this situation as well. especially as foursquare and tripadvisor are not very reliable anymore. so this application would help by showing where really something is going on.

what applications or solutions are you using today when you're travelling?

<comment><USER2> For now, when I plan a trip, I google the location in order to see what activities are happening while I'm in that city, and always plan ahead. And, when I'm in my hometown, I usually find out what's going on in the city by asking around, or from a magazine that publishes upcoming events.

<comment><AUTHOR> I see. Cool. Thanks so much for you suggestions.

</comment></comment></comment></comment><comment><USER3> 1\. Rioting: The police want to be able to see where people are. People who live in the area just want to get home.

2\. Shopping trips in places where old buildings have been converted. Knowing that the lane you want to walk down is utterly packed with people is useful.

3\. Beach trips. All your friends get this app and say, "meet us at the beach". On arriving, not being able to see them, you check the app to see the pockets of people.

4\. Traffic congestion. It stands to reason that if lots of people have this app you'll be able to see where the busy roads are and the less travelled.

<comment><AUTHOR> hmm interesting ... didn't think yet to sell it to the police! :-)

Thanks for your input mate!

</comment></comment><comment><USER4> Living in LA, one of the hardest parts of 'going out' is avoiding the crowds and finding places where people _AREN 'T_. Everything is packed, every street has traffic, every line is out the door. If there was an app that tracked cool/chill areas and establishments to hang out/ go out in, I'd love that.

<comment><AUTHOR> That's an interesting insight. What do you think about sharing your location (anonymously), as kind of contributing to the crowd and aggregating data?

</comment></comment><comment><USER5> Market research for retail/or other B&M industry

</comment><comment><USER6> how do you get the realtime density? From cellular operators? Or maybe extrapolating from installed apps base?

<comment><AUTHOR> it's a mix of both actually, we found best accuracy through networks and data connection. any thoughts on this? you think this could be useful in some cases?

<comment><USER6>
        1. Retail Analytics
        2. Bar/pub Analytics - where to go out tonight?
        3. Internal security (how many people attended the demonstration?)
        4. Traffic jams (if you know people are moving fast or slow)
        5. Optimizations for public transit

There are several security companies analyzing data from cellular operators, the problem that they need to build or recalibrate their models for each geography.

How can I contact you?

<comment><AUTHOR> that's interesting. google me to get in touch.</comment></comment></comment></comment>


Why wireframes can hurt your project - <AUTHOR> http://www.attackofdesign.com/why-wireframes-can-hurt-your-project/

<comment><USER2> Wireframes are boundary objects. <http://en.wikipedia.org/wiki/Boundary_object>

That's the best explanation I've ever found. They're better than pretty designs or actual implementation at getting "different social groups" (think business, dev, design, ...) to create a shared understanding. A developer looks at a wire and sees something different than a businessguy, but they're still looking at the same document, which lets them communicate. They're communication enablers. They should be ugly and they should be throw-away documents.

<comment><AUTHOR> That's a very good observation. I agree that they enable communication, but I just think in many cases other tools can be even better at that.

<comment><USER2> Sure. But designs generally are worse tools for communication with business people and devs than wireframes, unless you just want to talk about the design and nothing else.

<comment><AUTHOR> I don't see why they'd be worse tools. If you don't want people to focus on the design aspect at all, use something like a prioritized list of elements.

And if you want to talk about design, then try to get as close to the real deal as possible (either with a photoshop mockup or a html prototype).

But wireframes exist in a grey zone where people will discuss the placement of a call to action button or menu item, only without the benefit of visual guidelines like colors, contrast, typography, etc.

</comment></comment></comment></comment><comment><USER3> The arguments expressed in article actually defeat itself (article is self- contradictory)...

1) Getting attached to wireframes (or any other design concept) would be detrimental (OK... let's agree)

2) Wireframes are ugly (Well... that's actually good, so you wouldn't get attached to them?)

3) It would be better to start designing and coding on the target environment right away...

Well wait a minute, don't you get that by doing (3), you will get attached to your first iteration design, and will not realize when it's time to throw it away, and reset/pivot with a new approach?

<comment><AUTHOR> Wireframes being ugly is not really a problem. And I happen to think that Balsamiq wireframes are ugly, but wireframes created with other tools (especially sketching) can be quite beautiful.

Of course you could get attached to your first photoshop mockup or your first prototype, but my point is that since they are closer to the real deal, it's easier to judge if they'll work or not.

</comment></comment><comment><AUTHOR> Here's the tl/dr version for lazy/busy people:

\- Wireframes can be a useful tool for people who can't design and can't code.

\- Getting attached to them is a surefire recipe for wasted time and energy.

\- Wireframes are guidelines, not blueprints.

\- Ask yourself if your time wouldn't be put to better use actually coding or designing.</comment>


QuorraJS - <AUTHOR> https://quorrajs.org/ <comment><USER2> Laravel seems to be a popular framework for inspiration. AdonisJS[1] has the same idea and has been posted to HN a couple of times before.

I really like the simplicity of AdonisJS and QuorraJS, but I can't justify investing in investing in a framework with such a small userbase versus Express.

[1] [https://github.com/adonisjs/adonis- framework](https://github.com/adonisjs/adonis-framework)</comment>


"I'm from a country that no longer exists" - <AUTHOR> http://www.bbc.com/travel/story/20180425-im-from-a-country-that-no-longer-exists <comment><USER2> As a child in the sixties I had many colourful pictures in my Scottish bedroom, including a 'visit sunny jugoslavia' sign.. covered in happy smiling folkloric people.. if you'd told me they'd be strafing each other and destroying the mostar bridge I couldn't have fathomed it: why would anyone want to do that?

I think Yugoslavia summed up everything we wanted to be right in a postwar world but couldn't admit was doomed to fail. It was just waiting for Tito to die so it could unravel.</comment>


Show HN: Dashku - a real-time dashboard app, built with SocketStream - <AUTHOR> https://dashku.com

<comment><USER2> Getting this error:

Error: ENOENT, no such file or directory '/root/apps/status/client/static/assets/main/1340976517230.html' at Object.openSync (fs.js:240:18) at Object.readFileSync (fs.js:128:15) at ServerResponse.<anonymous> (/root/apps/status/node_modules/socketstream/lib/client/http.js:34:26) at EventEmitter.<anonymous> (/root/apps/status/app.coffee:48:16) at EventEmitter.emit (/root/apps/status/node_modules/socketstream/node_modules/eventemitter2/lib/eventemitter2.js:319:22) at Router.route (/root/apps/status/node_modules/socketstream/lib/http/router.js:18:15) at Object.handle (/root/apps/status/node_modules/socketstream/lib/http/index.js:96:54) at next (/root/apps/status/node_modules/socketstream/node_modules/connect/lib/proto.js:190:15) at /root/apps/status/node_modules/socketstream/node_modules/connect/lib/middleware/session.js:299:9 at /root/apps/status/node_modules/socketstream/node_modules/connect/lib/middleware/session.js:322:9

<comment><USER3> Hi carlsednaoui

As the creator of SocketStream, I am very keen to know how this error occurred. I believe it relates to the ulimit issue Paul mentioned in another comment which was fixed some time ago (i.e. the file was there, but the user was out of file descriptors)... not sure yet. Either way, we need to catch the exception properly.

As a general tip to all those hosting a Node app in production, you can catch uncaught exceptions with:

process.on('uncaughtException', function(err) { console.log(err); });

This ensures anything which goes wrong unexpectedly will be logged to your console, rather than sent to the browser - not good!

SocketStream doesn't currently do this for you by default, but maybe it should (in production mode). It's something I will consider implementing in the near future.

So far my focus has been on creating a great dev environment. It's very encouraging to see Dashku stand up to thousands of simultaneous users (once the ulimit issue was fixed), but I'm the first to admit more work is needed to ensure SocketStream is rock solid in production. It will take time but, thanks in part to experiences like today's, we'll get there.

Great job Paul.

Owen

<comment><USER4> I'm building a fairly large app right now with SocketStream and I just want to say that it is a joy to use. It really is a great dev. environment...flexible, useful, lightweight, and intuitive even without a ton of documentation.

</comment></comment></comment><comment><AUTHOR> Hi everyone,

My apologies, I didn't expect to end up Top of HN. I'll try and get it back up.

In the meantime, here is the YouTube video: [http://www.youtube.com/watch?v=cxf8f9AQBgM&feature=plcp](http://www.youtube.com/watch?v=cxf8f9AQBgM&feature=plcp)

<comment><AUTHOR> Hi everyone,

Once again, my apologies for the downtime.

For some reason, this was the case:

        $ ulimit -n
        > 1024

I thought I had set the ulimit to unlimited, but that wasn't so.

The site is alive, but may still be intermittent. Will keep you updated.

<comment><USER5> Did you set the limit on the CLI or within your limits.conf file? limits.conf is how you persist the value between reboots.

<comment><AUTHOR> CLI (facepalm). Thanks for the tip.

<comment><USER6> so, no disrespect, innovate innovate innovate, keep on going, looks great.

but.

In general terms - what does a potential user of this service conclude if the server appears to be hosted on a single machine and the admin staff doesn't seem to know how ulimit works?

(Yes, I realize this is ycombinator and about ideas and VC and all that.... just throwing the concept out there.)

Great product, but total lack of either understanding or preparedness on the lower levels.

<comment><AUTHOR> Hi,

It was unfortunate that this ulimit issue occurred and I apologise for that.

I knew about ulimit from 2 sources (a LinkedIn article on Node.js practices) and a 2nd source from a hosting service's documentation.

The fault (and it was mine) was that I didn't realise that in order to persist the ulimit setting between reboots, you had to set it in a configuration file.

Originally, the application was hosted across multiple instances and proxied, but due to the nature of the WebSocket library and it's use of transports with the proxy library, the connection was intermittent, so I reverted to a single instance. Since resolving the ulimit issue, this application has stayed up.

As for admin staff, you may be surprised to learn there is no company with multiple devs, designers, product people and sysadmin behind all this. This is all my work, all 2 and a bit months of it.

</comment></comment></comment></comment></comment></comment><comment><USER7> You shouldn't be serving your static landing pages and assets over node.js. Ideally you should have an nginx server reverse proxy dynamic requests to your node.js server. Nginx should serve the static assets before the requests hit the node server.

<comment><USER8> You have some data to back up this recommendation?

<comment><USER6> Indeed. I mean, it may very well be true, and without time to analyze, if you are highly confident in nginx and the rest of your server setup (it's not some other user definiable limit) you might as well.

That said - building websites to handle load has no magic bullet. Sure, nginx is good. Far-future expires headers and cache-busting schemes to go with it are good too. CDN's are good. Varnish is good. Clusters are great too, for capacity and redundancy, but you need to be aware of stuff in all these cases, and every layer you add is also something else to manage and something else to break..... so really it has to come from test-driven results regarldess, so you are spot on.

My beef with services like this (granted I haven't investigated fully) is I don't _want_ hosted stuff. I get that's a huge market, but for confidentiality and other reasons, there is also a market for slightly more traditional stuff.

I'd love a toolkit to make it easy to build arbitrary animated control panel-y things a-la Quest Spotlight on <whatever> for my apps... havent' found it yet, anyone know one?

</comment></comment></comment><comment><USER9> Here is a little piece of a script I wrote to push the limits up on an Ubuntu box during setup (AWS).

        # Increase File Descriptor limits.
        export FILEMAX=`sysctl -n fs.file-max`
        sudo mv /etc/security/limits.conf /etc/security/limits.conf.bak
        sudo touch /etc/security/limits.conf
        sudo chmod 666 /etc/security/limits.conf
        echo "root soft nofile $FILEMAX" >> /etc/security/limits.conf
        echo "root hard nofile $FILEMAX" >> /etc/security/limits.conf
        echo "* soft nofile $FILEMAX" >> /etc/security/limits.conf
        echo "* hard nofile $FILEMAX" >> /etc/security/limits.conf
        sudo chmod 644 /etc/security/limits.conf

        touch /home/ubuntu/.bash_profile
        echo "ulimit -n $FILEMAX" >> /home/ubuntu/.bash_profile

        # Increase Ephemeral Ports.
        sudo chmod 666 /etc/sysctl.conf
        echo "net.ipv4.ip_local_port_range = 1024 65535" >> /etc/sysctl.conf
        sudo chmod 644 /etc/sysctl.conf

<comment><USER6> You know it's odd. One one hand, the almost-greybeard in me wants people to stop screwing around with what I take to be standard unix concepts... what are the ephemeral ports, etc.

On the other hand, when I take a close look at something like what you just posted, the level of control is hard to argue with - nothing wrong with that.

The temptation is still to basically do what you did (thanks BTW) and just revert everything back to what it rightfully should be.... it served us just fine for ages.

Or I'll switch to FreeBSD ,unless they're doing the same thing.

</comment></comment><comment><USER10> Seen a couple of startup's sites go down when they make the HN homepage lately, and both seem to be using node.js (according to the error messages). Not dissing node.js, but maybe its the wrong tool for the job.. Just use a static site for your landing page!

</comment><comment><USER11> 14 minute video? Why? On the homepage have a video that is 30-60 seconds. here is an example <http://www.youtube.com/watch?v=qFcZjtGS1CE>

Otherwise looks good.

<comment><USER12> I hadn't seen that before, and I've sent a batch of photos. Really well done!

</comment></comment><comment><USER13> Site seems to be having problems. Suggestion to the OP (your page also seems to be down) is to link to a static site with a demo video or description of the product. Or, test the load your app can handle before posting here.

</comment><comment><USER14> Looks interesting. I looked at Geckoboard a while ago but gave up since the dashboards didn't offer the flexibility I needed at the time, and they were just too slow to render (I don't have a dedicated screen, just want to it the page often).

One issue: I tried to sign up using Chrome 20 (Windows 7) and the dialog that appears is below the video in the Z-order.

<comment><USER15> I am the developer of InfoCaptor and would be pleased if you can take a look at <https://my.infocaptor.com>

<comment><USER14> Looks very feature rich ... but to be honest the aesthetics need work. A huge part of this space relates to appearance obviously and the sample dashboards just don't look as polished as the competitors, even if they offer more widgets and options.

<comment><USER15> thanks, i know need to work on getting more polished dashboards. It just taking time to churn everything out.

</comment></comment></comment></comment><comment><USER16> This is great. I really like how you can test your widgets with sample data.

Because of the lack of a decent dashboard solution, we've been running our own. We absolutely wanted to use D3 and we wanted to have multiple, toggleable pages.

This might just do the trick.

</comment><comment><USER17> I have tried most of those dashboard services and the best one by far for me is <http://klipfolio.com/>

</comment><comment><USER18> I see nothing but a link to self. Did something break?

</comment><comment><USER19> The youtube video was blocking the sign up form for me -- I had to remove that div in "Inspect Element" before I could make an account...

</comment><comment><USER20> The title remembers me on <http://beautifulmind.io/> which was on HN some days ago

<comment><USER21> <http://news.ycombinator.org/item?id=4164025>

</comment></comment><comment><USER22> The app's assets (main.js and main.css) aren't being served properly. So right now I can only see a link to self on the homepage.

</comment><comment><USER23> Is this always going to be free? Because there are other competitors in this space currently with premium solutions...

<comment><AUTHOR> Hi,

For the beta, yes, which should last a couple of months. I will investigate turning it into a SaaS, but for now I will go and find some work.

</comment></comment><comment><USER24> This looks very slick, kudos!

Small nitpick: why do I need to give myself a username when signing up?

</comment><comment><USER25> The self-signed SSL certificate causes Firefox to scream security issue. You might want to fix that.

<comment><USER26> Odd, Firefox here seeing a signed GlobalSign nv-sa certificate that it's got no problems with. Maybe just a rapid fix by the dev :)

<comment><USER27> Still had an exception here :/

</comment></comment></comment><comment><USER28> Much of the text in the page is not visible, and the layout is broken.

Chrome 20 on Ubuntu 12.04.

</comment><comment><USER29> Independent of what it does and all, you have designed the UI really good. Kudos for that.

</comment><comment><USER30> <https://dashku.com/> is not working for me.

</comment><comment><USER31> Website is still down, that's a shame - OP can't even get the homepage back online before showing HN.

30 minutes to bring back a homepage is pretty bad man, also your personal homepage <http://paulbjensen.co.uk> is returning NO CONTENT, is that on the same (bricked) server?

<comment><AUTHOR> Hi,

Apologies for the downtime.

It turns out ulimit was set to 1024 when I thought I'd configured it to unlimited.

As for paulbjensen.co.uk, I removed that site about 3 months ago but didn't remove the link to it in HN. As for your question about the same bricked server, the answer is no, I run Dashku on a different server to the server that was hosting paulbjensen.co.uk.

</comment></comment><comment><USER32> thank you for this! just created a awesome dashboard very quick! :)

why not create a kickstarter project and raise enough money so you can open source the code? i would definitely contribute!

</comment><comment><USER33> So this is free for now, what are you thinking of charging?

</comment><comment><USER34> demo page doesn't work in Chrome. Map doesn't do anything. updating text is in a thin column down the left side that scrolls off below the main image.

</comment><comment><USER35> (Error code: ssl_error_no_cypher_overlap)

</comment><comment><USER36> Put Varnish in front of it, quick!

<comment><USER6> Would that, without any configuration, actually fix this?

</comment></comment><comment><USER29> Not loading for me.

</comment><comment><USER37> website is down</comment>


Ask HN: Does it pay off to work for a startup? - <AUTHOR> I worked for a few. Had a good run in one of them, but luck played a big part. Among the rest, hard work didn't really pay off. What is your experience? <comment><USER2> That depends on what one considers a real startup. I've been at three that referred to themselves as such (really four, but that one was already public when I joined).

Two tiny ones were disasters - pocket change when one IPOed and only a sense of relief escaping the other (like joining the Witness Protection Program), though some alumni went on to get rich on famous stuff. The largest was a great success, lucrative and a good education about the world - but there was a lot there before me.

<comment><AUTHOR> Same experience with tiny startups. Worked like crazy and earned pennies.

</comment></comment><comment><USER3> With the wrong kind of options it's easy to get shafted with a massive tax bill depending upon what kind of options you get and how your timing is in exercising it can be a huge risk to your future if it works out poorly.

<comment><AUTHOR> I never got into this situation, but heard people got options but they became underwater after IPO (e.g. Dropbox). There are several hot startups that had a lot of hype, but turned out just so so. I work for a VC funded startup now, but I feel there have been huge dilution, so I started asking if it is worth it. There is poor work life balance and liquidity risk. At the end, if a company goes IPO, I don't expect to make too much money. Why not get a job at a big company and enjoy life.</comment></comment>


Ask HN: Launching a startup in an already saturated market? - <AUTHOR>

I've spent the last few months working on a time/task tracking and invoicing web app. There are obviously TONS of them already out there, many of which already have a dedicated user base, but I really feel like mine does things differently than any I've ever seen (not going into details here since it's not very relevant to this question).
I'm relatively new to the startup game, but it seems like the majority of startups try to execute some big new idea, while mine is just a rework of a bunch of old ideas (like "how time should be entered", or "how tasks should be edited/assigned", etc.)
Any tips on how I can gauge the marketability of my system since everyone is already using a different one? Is there any chance that I could succeed, or should I just keep it to myself and not invest the time/money in trying to make a business out of it (which would be fine with me since it was originally built for myself)?
(I know that without you seeing the app, this question is a little vague, and I apologize for that). <comment><USER2> If you are working on an existing and quite extended concept (like to one you're explaining) i think your best chance is to try to find better ways to do things on the type of app you are working on. You can really make something work if you introduce significative changes that just make things easier and more comprehensible. There are quite a few amount examples of that (google just started when quite a few search engines did exist, which was one of the reasons they did so well in a pretty crowded market? They did provide a search engine that worked much better than the others and that was just willing to be a 'search engine'; no banners on front page, no overloated designs...)

</comment><comment><USER3> _I really feel like mine does things differently than any I've ever seen (not going into details here since it's not very relevant to this question)._

Actually, it is. The unnamed details presumably constitute your "unique value proposition." You want to try to center your pitch around that.

And, if you are haven't already, you should check out Patio11's writings, as they sound like they will be relevant.

</comment><comment><USER4> The only thing you should focus on is finding a way to generate referral business. It is the only way to avoiding competitors that can outspend you.</comment>


Show HN: Single Command SSL/TLS Reverse Proxy with Autogen'd Certs (Golang) - <AUTHOR> https://github.com/suyashkumar/ssl-proxy <comment><AUTHOR> A simple, single-command SSL/TLS reverse proxy in Go for fun. Handy in a pinch when running jupyter notebooks (usually self-signed certs) or other services I want to slap SSL/TLS onto. Got tired of apache/nginx configs and of minting self-signed certs on my own.</comment>


Terrible choices: MySQL (2014) - <AUTHOR> https://blog.ionelmc.ro/2014/12/28/terrible-choices-mysql/ <comment><USER2> I have been a mysql dba for years; I don't recommend mysql for anything or anyone. Oracle are adding glitter, not polish.

If you still really want or need mysql please do check out mariadb, even old versions like mariadb 5.3 onwards added a lot of features and fixes for old problems from before the Sun acquisition (Remember, MariaDB was forked with the Sun buyout or MySQL AB, not Oracle). It's not entirely a drop in replacement though, read the manual and test your configs!

What MariaDB/MySQL is still really good at, is scaling horizontally pretty quickly, just be sure to separate out different schema workloads into different server instances, and don't make your schema overly complex. Not that it can get too complex anyway with SQL/PSM heh- _snort snort_.

Want to scale bigger and faster, and maybe with an even more highly tuned dataset per-cluster? Cassandra. Lots of Oracle and IBM business is being slurped up by Cassandra and Datastax.

Want mixed database workloads and all the RDBMS management, SQL and PL goodies? PostgreSQL.

<comment><USER3> I'm genuinely curious - under what circumstances would you recommend MySQL or even MariaDB over PostgreSQL?

<comment><USER2> Since Streaming Replication and pg_basebackup was introduced in PostgreSQL; I generally wouldn't.

MariaDB 10 and onwards has some fun features though if you are stuck with it. The CONNECT and TokuDB storage engines are very useful and interesting. Parallel, Multi-source, and GTID replication with multiple domains is very easy.

</comment></comment></comment><comment><USER4> I remember being introduced to MySQL a long time ago (around 2004). When I noticed its standards incompliance, buggy indexing, weird collating behaviour and incomplete query optimizer, I was repeatedly told these quirks will soon be resolved and it was 'only a matter of time'. Something to keep in the back of your head when you see similar situations with other open source solutions.

<comment><USER5> with other <strike>open source</strike> solutions.

<comment><USER6> While it most definitely is open source, it nicely shows the difference between an open source _project_ and an open source _product_ (which, on top, is cannibalizing the other, ridiculously high priced mainline inhouse DB)

</comment></comment></comment><comment><USER7> I'm quite sure you could do a breakdown of _any_ technology and find enough problems that it looks like a bad choice.

What tech you use is always a compromise between the benefits of what it's good for and the problems you need to work around. In the case of MySQL it's ubiquitous across hosting services, easy to use, _very_ fast once you've tuned it a bit, and there's clients for pretty much every language. You need to weigh those things against all its problems, and often you'll find it's _actually_ a good option if you're doing web work that you need to deploy to environments you have little control over - less so now than 5 years ago admittedly, but that _is_ the reason MySQL is so popular - because before the devops trend that's got web teams running their own servers most sysadmins made MySQL the only database available.

<comment><USER8> > _it 's ubiquitous across hosting services_

So? No one needs 10 different hosting services. You only need one, and you've been able to choose a (cheap!) one that offers Postgres for many years now.

> _easy to use_

I strongly disagree, and the entire article is basically rebutting this assertion. It _seems_ easy to use, but silently failing, breaking promises, and being noncompliant with standards are all issues that make MySQL _harder_ to use.

> _very fast once you 've tuned it a bit_

You can tune Postgres as well. It actually optimizes its queries much better than MySQL does, so you can go longer without starting to optimize.

> _and there 's clients for pretty much every language_

Unless you're using some fringe-y language, this isn't an issue either. Some languages have gotten a Postgres client before MySQL, simply because their communities have a culture that's more similar to Postgres.

</comment></comment><comment><USER9> MySQL is the PHP of databases (speaking as a PHP contributor). It's awful in the same kinds of ways.

<comment><USER10> MySQL does not deserve to be called a database at all - as the article describes, it does not implement basic database features correctly.

<comment><USER11> I think it's fairer to say that: it doesnt necessarily implement them in a standards-compliant way. Which I dont mean to imply it implements everything, in a non-standard way, it's missing a bunch of stuff. But it does have a lot of standard database features, like transactions and so on, but a lot of stuff is ... odd. for example, 'row_number()' is missing. You have to use session variables.

<comment><USER10> "Non-standards-compliant way" is the long-time default engine, MyISAM not supporting transactions and locking. Fortunately they moved to InnoDB as default recently, but the very fact that it took them so long tells much about their attitude towards DB standards compliance.

</comment></comment></comment></comment><comment><USER12> Article is from 2014; does all of this still apply? I'm just trying to understand the relevance, other than MySQL is a flaming death trap which everyone should be warned about regularly.

<comment><USER13> I would be happy to be proven wrong (thankfully I have dealt exclusively with Postgres in the last two years or so), but I think most of the warts and shortcomings the post talks about are still extant.

Off the top of my head, I can add that you can't have subselects in views (which is preposterous), nor can you materialize views. Also, I don't believe you can have function-based indexes, and most certainly you can't pivot tables easily and CTEs are not supported.

I think 5.7 (if it's been released) finally brought the ability to create multiple triggers for the same event. Until 5.6 you could specify only one.

In short: MySQL is no fun. Choose Postgres or any other decent system, but just steer clear of the damn dolphin.

<comment><USER12> > MySQL is no fun. Choose Postgres or any other decent system, but just steer > clear of the damn dolphin.

Ahahahahahahaha. Thank you. That was amusing and also helpful.

</comment></comment></comment><comment><USER14> For anyone that still wants/has to use MySQL, there is always MariaDB - a drop in replacement that is evolving a bit faster.

[https://mariadb.com/kb/en/mariadb/mariadb-vs-mysql- features/](https://mariadb.com/kb/en/mariadb/mariadb-vs-mysql-features/)

<comment><USER15> Whoa there. Not completely drop in. Definitely thoroughly go through the documentation to see where MariaDB has diverged from MySQL over the years.

</comment></comment><comment><USER3> Even though this is an old article, I stumbled on pgloader!

[http://pgloader.io/](http://pgloader.io/)

Sounds like this might get me out of future MySQL pain...

<comment><USER8> I used pgloader for a project, and it was harder to use (and lossier) than I was expecting. Make sure you carefully look what you're losing in the conversion and are able to add it back (either during conversion by hooking into pgloader or after conversion).

<comment><USER3> Do you have any further details on what you lost? Very curious - especially to know if it would be considered a bug or design flaw somewhere in the program itself, or a feature mismatch between MySQL and PostgreSQL.

<comment><USER8> Feature mismatch. Something related to constraints. It wasn't a showstopper at all.

</comment></comment></comment></comment><comment><USER16> So the solution to making get_or_create work is to downgrade the isolation level? That seems like the flaw is with get_or_create in the first place.

I've found collisions to be quite nice for doing "upserts", either on a constraint or predictable id.

</comment><comment><USER17> Without wanting to discuss the merits of MySQL (I don't use it), is case insensitive collation that much of a problem?

I note that case insensitive collation is also a default for MS-SQL.

<comment><USER3> It's not just case-insensitive, it's _accent_ insensitive. That could cause problems for any language that uses accents.</comment></comment>


Iceland's Prime Minister Resigns, After Pirate Party Makes Strong Gains - <AUTHOR> http://www.nytimes.com/2016/10/31/world/europe/icelands-prime-minister-resigns-after-pirate-party-makes-strong-gains.html <comment><USER2> Stood out for me:

"The left-leaning parties — the Left-Greens, the Pirates and two allies — won 27 seats, just short of the 32 required to command a majority in Iceland's Parliament, the world's oldest."

and

"About 40 percent of Pirate supporters are under the age of 30. They had pinned their hopes on a party that has promised to install a more inclusive and transparent government."

and

"The Pirates have pledged to enhance direct democracy by passing the world's first "crowd-sourced constitution," drafted by Icelandic civilians rather than politicians. Parliament blocked the document in 2013."

<comment><USER3> > drafted by Icelandic civilians rather than politicians.

What was the process for this to be? Having folks who are untrained in law draft a constitution and then passing it sounds... well about as dumb as having folks who've just learned to program write an operating system and put it in production.

<comment><USER4> Politicians are also untrained in law draft a constitution, which is why it generally is given to lobbyist that can pay people who are trained in law (paid by the companies that pays the lobbyist).

It would be nice to see a country (or EU) that forbade politicians to share or get input on law drafts from lobbyists. Just imagine how the many current trade agreements would look like if only politicians had seen and written them. Or just extensions of copyright law.

Its like having a operating system be written by an advertisement company and then be surprised when it is designed in favor of the advertisement company rather than the user who bought the device.

<comment><USER5> Sometimes getting input from lobbyists can actually be an all-around helpful thing to do. Think about things like industry norms such as the default sizes of shipping containers. Politicians who write such documents rarely have the technical knowledge to understand what the norms should and should not prescribe and the citizens do not care.

In such cases it is actually helpful for the lobbyists to decide, so long as different sizes of companies and different industries are represented.

<comment><USER6> Please do not confuse "getting input from _industry_ " with "getting input from _lobbyists_ ". Getting unbiased, balanced input from a large section of industry _is_ important, but if you think you (assuming you are a politician) can do that by simply listen to the lobbyists who show up at your door then you are not doing your job. Company lobbyists, however, know that this is what you _will_ do, and they will tell you things which will give them advantages over their competitors, _not_ what will benefit the industry as a whole.

It is a huge mistake to think that individual companies want things to be better for their field or industry as a whole. They _don't_ ; whatever ups or downs the industry suffers will be borne equally by all, and is therefore irrelevant to the _real_ goal of companies: to _get an edge over the competition_. Companies will gladly make things worse for everyone in their field if it means they will get a larger share of it. Politicians, apparently, do not know this, or do not have enough incentive to realize this, so politicians choose to listen to the lobbyists and choose to believe that they are thereby listening to the industry.

<comment><USER7> "Lobbyists" is just the label attached to the people who give input. Yes, they're professionals and yes, this is where the corruption happens, but that's just the nature of seeking input.

You surely don't expect companies to not advocate for themselves and be wholly altruistic? A lobbyist is paid to advocate for their client's interests. Sometimes that aligns with the public interest, most of the time it's a grey area.

There are plenty of opportunities for corruption in the interaction and those need to be addressed; rebranding 'lobbyists' isn't one of them.

<comment><USER8> I would disagree, I think it's a label attached to those people that actively attempt to influence policy making on behalf of their client's interests.

Just offering specialized input would be consulting.

And the way I see it: company and industry group lobbying works just fine, but there is a significant lack of public interest lobbying.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> Either I missed something or this is wildly inaccurate.

The PM's party lost much support in this election, in particular the coalition they're in doesn't have majority. This was expected.

I find no Icelandic news about him resigning. On the contrary he says he's not going anywhere as the party leader for the Progressive party.

NYT might have misunderstood the entirely customary "request for release from duty" that the PM makes to the president on behalf of his cabinet. This is a normal formality after a majority coalition loses parliament majority. The president (which in Iceland is just a figurehead) then usually asks the cabinet to remain until a new coalition has been formed, at which time he gives a new coalition agency to form a new cabinet. This is just normal procedure, and nothing newsworthy.

Pirates tripled the number of seats since last election, but they have been polling much higher, towards 30% support on par with the Independence party.

But, inaccurate foreign news of Icelandic politics seems more normal than accurate ones.

(source: am Icelandic)

</comment><comment><USER10> I actually have mixed feeling about the Pirate Party. I do agree with their major points about economy and social issues for instance.

But the part that leaves me really uneasy is this idea they have of bringing: _direct democracy_ to people and let them vote for a lot of issues.

After _Brexit_ , do we really want to give the people the power to vote in issues that are way above the knowledge of most of the voters and to have media skewing and manipulating their views of the problem according to the interests of the few ones commanding the media?

</comment><comment><USER11> Keep in mind when considering Iceland in terms of politics or economics that it is tiny. 300,000 people means you can do things you can't with 300+ million. And vice-versa.

</comment><comment><USER12> Is there a link that does not require logging in? Right now this is a walled garden article.

<comment><USER13> [https://www.rt.com/news/364768-iceland-pm-resigns- pirates/](https://www.rt.com/news/364768-iceland-pm-resigns-pirates/)</comment></comment>


Ask HN: "Preferred Domain Availability Notification" - Is it bait? - <AUTHOR>

Today I have received two unsolicited e-mails regarding a domain auction that "might be useful" for me. The e-mail reads:
"Preferred Domain Availability Notification:
cooldomain.com will be listed for auction in a few days. This domain might be useful for you, since you own a domain similar to this domain.
To confirm interest in owning this domain, fill out the simple form here: cooldomain.com [link]
Sincerely,Alexander 718 Thompson Lane Suite 108142 Nashville, TN 37204
If you do not want more of these messages, please click the link above and follow instructions at the bottom of the page
I am accustomed to sleep and in my dreams to imagine the same things that lunatics imagine when awake. Rene Descartes"
---
The link forwards to a site which reads:
"Auctions close daily at 10am. COOLDOMAIN.COM has been flagged as a premium domain and we expect it to sell quickly. Since you received a priority notice from us, you will be given first chance to acquire this domain.
Fill out the form below and you will be contacted with the opportunity to purchase the domain when it is made available to the general public."
---
cooldomain.com is not the real domain name; I am obscuring the real name simply so as not to pre-empt the 'Show HN' post I am hoping to make in the near future. The e-mails come from two different addresses: firstname.lastname@example.com and email@example.com. Both these domains forward to http://dnidomainmarket.com, which appears to be a low-key domain reseller.
This has alerted me because I currently own THEcooldomain.com and am fully aware that cooldomain.com is about to become available because I've been watching it for a number of months and intend to snap it up as soon as it does so. I've made backorders on a couple of different registrars, for example.
My initial reaction is to believe that if I sign up to this site then I am essentially indicating my interest in the domain and therefore prompting them to also attempt to register it; so that they can then sell it back to me (or some one else) for a premium. So, the best course of action is to do nothing. Alternatively, they fully intend to pursue this domain anyway and therefore would my best chance be to subscribe to their auction and enter a bidding war? Would that auction even be a real auction?
If anyone has any advice I'd really appreciate it. <comment><USER2> I would do as much research as possible on the companies and domain and be prepared to spend if you really want. I think there is 60 days after it expires while it is owned by the current registrar and so the last owner can renew. Then it drops to whomever has the fastest computer to snap it up. I usually recommend clients look for another domain unless it's perfect. (Please correct me if I am wrong or out of date.)

This is basically my experience over 10 years:

I turned down hundred dollar offers and bought the domain for $8 from a registrar.

I let a less ideal one expire without saying anything and bought it from a registrar.

I had multiple companies offering "exclusive" sale of the same domain (different prices). I put in offers and lost in auction.

I went to the domain owner and asked if they would sell it directly. They renewed for 5 years and refused to sell.

We bought an ideal domain for $1200 where the domain was available when we started and weeks later was registered by someone else. It seemed unlucky and a little suspicious.

I sold a domain for $375 once. The guy seemed nice but I was surprised when a corporate website went up soon after.

I tried to buy a domain and they said "20". I was excited until they said "$20,000".

<comment><AUTHOR> Your information sounds about right. The domain is currently about 10 days into the "redemption period" which I believe is 'last chance saloon' for the domain owners to renew it. Before expiring it was ad-parked so I very much doubt they will decide to renew. This doubt it compounded by the fact that we're so close to the end as well.

The sad reality is, I don't have a deep pocket. This is a one-man startup idea that would hugely benefit from the brand opportunity. I'm just trying not to get screwed. Or screw myself, inadvertently.

</comment></comment><comment><USER3> Some domain names that are in their redemption period can be bought directly from the registrar. For example godaddy has godaddy auctions (<https://auctions.godaddy.com/>) Maybe the registrar of your desired domain name has the same. I would buy it that way if you don't want to take the chance it gets snatched right after the domain is available. Never respond to those emails though.

</comment><comment><USER2> Why does it feel like buying a car from an airport parking lot?</comment>


How did Escher do it? - <AUTHOR> http://www.ams.org/samplings/feature-column/fcarc-circle-limit <comment><USER2> M. C. Escher is a genius. I was so inspired by his Circle Limit drawings, that I've been working on an iPhone puzzle game.

Early Prototype Here: www.circull.com

The math isn't that difficult to understand. Circle inversions are analogous to reflections about a line in 2d Euclidian geometry. It's fun stuff.

</comment><comment><USER3> See also <http://escherdroste.math.leidenuniv.nl/></comment>


Good ebook for learning data structures & algorithm - <AUTHOR>

Hi there,
I am c/c++ programmer. I have 3 years of programming in C. I wish to contribute to open source but I am demotivated by my lack of algorithm knowledge.
Please name few good books that will give me a fair introduction to Algorithms like search algos, etc etc.
I don't mind if I have to learn some Math for it.
Thanks in advance Ankit. <comment><USER4> Here's my list:

Structure & Interpretation of Computer Programs (Abelman, Sussman - <USER2> oriented, classic) Algorithms in a Nutshell (OReilly) Clever Algorithms (Jason Brownlee. Uses Ruby for examples) Data Mining Analysis - <USER3> Algorithms (Mo. Zaki - ebook) Python for Data Analysis (Wes McKinney) Mining of Massive Datasets (Rajaraman, Leskovec, Ullman - ebook)

Enjoy.

</comment><comment><USER5> The art of computer programming; not really an introduction, but a must read.

</comment><comment><USER6> You want CLRS. That should be plenty to get you started

<comment><AUTHOR> Thanks a ton.</comment></comment>


Announcing a specification for PHP - <AUTHOR> http://hhvm.com/blog/5723

<comment><USER2> why can't I upvote this?

<comment><USER3> What makes you think you can't upvote it?

<comment><USER2> it's the only item on 'new' not showing an upvote link/image for me</comment></comment></comment>


Webscript – Choose a URL and type in a Lua script - <AUTHOR> https://www.webscript.io/

<comment><USER3> Hi all! I'm one of Webscript's founders.

It's nice to see Webscript back on HN. You may enjoy reading the discussion from a couple years back when we first launched: [https://news.ycombinator.com/item?id=4718686](https://news.ycombinator.com/item?id=4718686).

<comment><USER4> Hi! Nice product, I'd like to upgrade. But I don't want to use Stripe. Any plans to use something else - btc/paypal - as a payment method in the future?

I really like the idea - put the LuaVM to great use handling this and make things really simple with a hosted namespace. I'll be using my free account in the next few days ..

<comment><USER3> I'm glad you like it, but we have no plans to take payments in any other form.

Is there a reason you don't want to use Stripe?

<comment><USER4> I'm in Europe, where Stripe support is quite spotty, and also I don't want to expose my credit card/customer credit cards to yet another 3rd party. Paypal is the #1 payment method chosen by my customers, so that is important to me.

For you Americans - Stripe may seem 'global' but in fact its far from it. At the moment only 5 western nations are officially supported, with 12 more in beta - well thats not going to be very good for those of us with a bigger market share than the 17 countries where Stripe is currently able to operate. Its a start - but its too much of a limit.

<comment><USER5> >At the moment only 5 western nations are officially supported, with 12 more in beta

Isn't the "support" just for entities _accepting_ payments with Stripe, rather than the customers who are actually paying? I ask this because I accept payments with Stripe, and have seen cards processed successfully from many countries, even non-Western countries that Stripe doesn't offer merchant support in.

I understand that shopping online in Europe is a bit more complex with the EMV/Visa Electron system that is popular in the region, so I get where PayPal would fit in here since it can be linked to a checking account. Just wondering what specifically you mean by Stripe not "supporting" certain regions.

<comment><USER4> The problem is the 'accepting payments' that you refer to is 'paying by credit card' \- where this is usually universally possible - but if you don't have a credit card and want instead to pay with cash by linking your bank account, Stripe doesn't have the mechanism in place to do that yet, in all banking markets in Europe.

Since America is run by its credit cards, I can understand why this is difficult to understand, but a majority of folks in Europe simply don't use credit cards, preferring always to pay cold hard cash. It's just different. And existing payment infrastructures - such as paypal and so on - <USER2> solved this problem as well as they can, decades ago, so to be honest its sort of lame to have to be explaining this already about Stripe. Stripe currently has a lot of hype, and as a service it _is_ good for us merchants where our markets are limited to those regions also bound by Stripes' investment into its infrastructure, but outside of that: Stripe is quite a bit mediocre in this market.

<comment><USER6> > a majority of folks in Europe simply don't use credit cards

Ehm? Europe's a very big place, and in many European countries credit cards are just as common and as commonly used as in the US.

<comment><USER4> Europe _is_ a big place, which is why its disappointing that Stripe doesn't cover a majority of the EU region .. yet .. but you are mistaken in thinking that credit card use is as common as it in the US - in fact, its not the case. Direct-deposit is far more common, even still today - Europeans' don't have such a dependency on personal credit as the American market demonstrates, alas ..

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> "Choose a URL" made me think this was for scripting a web client to interact with another site. Like you'd enter "www.imdb.com" as the URL and write a script to find the latest movies opening.

</comment><comment><USER8> $5/month for unlimited everything seems ... problematic. Let's say I implement a lightweight service for backing up photo libraries (we're not even talking deliberate abuse here).

<comment><USER3> When someone starts hitting us with a lot of concurrent requests or storing a lot of data, we do sometimes have to ask people to change what they're doing.

<comment><USER9> >we do sometimes have to ask people to change what they're doing.

You don't give them a chance to pay more for the service?

<comment><USER3> No. The $4.95 plan is the only/largest plan we have.

<comment><USER10> W...why would you turn away your biggest customers?

<comment><USER3> Because we believe that the incremental cost of supporting such customers would exceed the additional revenue it would generate.

(I guess that's a sort of trivial answer? Feel free to ask follow-up questions if you're genuinely curious about it.)

<comment><USER10> Is there a particular reason you don't think heavy users would be willing to pay heavy enough money to make themselves worth it? In my experience people who use your thing 2x heavier than normal are willing to pay more than 4x to keep using it because it's important to them in a serious way.

Usually I see startups handling this by having a "call us" pricing mode, which I have always assumed meant "We want to establish a proper business partnership with you that goes beyond being just a user"

<comment><USER3> One big issue is that we're just not a good product fit for something heavy, so I would expect most people who want more than what we'll give them for $4.95/month to eventually discover that Webscript is the wrong service for them. (For example, technology-wise, they should be using something that doesn't spin up a new Lua VM on every web request.)

We could certainly adapt Webscript to be a better product for bigger workloads, but that would be a lot of work on our side, and that product might end up just being "Heroku but with Lua," which is probably a bad product. :-)

I also doubt that your experience applies here in terms of those heavy users wanting 2x the use for 4x the price. At 4x the price, Webscript would cost close to $20 per month, and we would start to compete price-wise with shared web hosting or VM hosting solutions. I'm not sure there are really users who want something like Webscript for that price.

<comment><USER10> Ok, that makes sense then. Thanks for answering :)

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER11> Looks like a cool project, but I'm not sure how it would be useful. In the demo video and examples they talk about how it can handle credit card payments via Stripe... why would I want to another party—that contributes virtually nothing—to a credit card transaction?

I also wonder how they deal with abuse. If not restricted, this could easily be used in a DoS attack for example.

<comment><USER3> Hi, Webscript founder here.

Generally, I think our customers fall into two large buckets:

1\. Experienced developers who want something lighter-weight than, e.g., Heroku.

2\. Inexperienced developers (perhaps even first-time developers) who are trying to do something simple (e.g. send themselves a text message when a webhook fires).

To take your Stripe example, I imagine based on your question that you're thinking about the case where you have a server-side app already, in which case handling Stripe is very little extra work. If you are instead, for example, selling a digital good via a static website, Webscript would be a lot easier than building a full web app. You could have the job done via Webscript by the time you created a new app and set up your git repo for Heroku.

As to the DoS attack angle, do you have an example of how you see Webscript being used for something like that? If you mean flooding some target with HTTP requests, it seems like it would be more efficient for an attacker to send the requests themselves rather than try to funnel them through Webscript.

<comment><USER12> I love webscript.io, and am part of the second group – I want to accomplish some sort of webhook-based workflow, with minimal effort or scaffolding. I've used it a few times for hackdays, and it's great how simple + fast it makes it to go from an idea to a rough implementation.

</comment></comment></comment><comment><USER13> That looks very good. How do you plan to manage spammers ?

<comment><USER3> Hi! I'm one of Webscript's founders.

What do you mean by spammers?

If you're talking about email, Webscript can be made to talk to an SMTP server, but whoever writes the script could presumably have talked directly to that SMTP server instead, and that would have been more efficient. So why would Webscript be used for spamming?

<comment><USER14> For anonymity, I guess. If the spammers write scripts to send emails from your servers, the authorities can't track down the spammer's servers and shut them down. And the spammers would be able to just keep creating anonymous accounts and using your site to spam after each spam-script is individually shut down.

<comment><USER3> I don't think this is a real issue. For the scenario you're imagining, there would have to be an SMTP relay somewhere that met the following requirements:

1\. It doesn't require authentication. (If it required authentication, then there would be no way to gain anonymity.) I think this is extremely rare these days.

2\. Other SMTP servers are willing to receive mail from it. This seems unlikely, since such a server is almost certainly going to be used to send a lot of spam.

3\. This open relay keeps track of the sender in some weak way (since there's no authentication), like perhaps IP address. (If this weren't the case, there would be no reason to use a third-party service to hide your identity.)

If you could find some SMTP server that met all these requirements, then you would have motivation as a spammer to use a third-party service to hide your IP address. But a VPN would be a better way to do that then using something like Webscript. Webscript will be comparatively slow, we're likely to shut down a spammer because their traffic will be heavier than what we expect/allow, and we don't have a lot of IP addresses, so we would certainly just get blocked at some point just as the spammer would have if they hadn't been using us.

<comment><USER13> Oh, I thought that mails were sent from webscript itself. If a potential spammer needs an external SMTP server anyway, it won't bother with webscript.

</comment></comment></comment></comment></comment><comment><USER15> This seems functionally equivalent to a vhosts+cgi-bin.

<comment><USER16> I'd say it's even less capable. Shared hosting providers typically allow the use of Perl, Python, PHP, Tcl, Lua and sometimes other languages for CGI scripts. From what I can tell, this service limits you to Lua only.

<comment><USER3> Definitely! Just as a shared hoster is less capable than running your own VM and a cash register is less capable than a laptop. That doesn't mean those things aren't useful. :-)

I'd say that most of the time, people are more productive with more specialized tools _if_ the tool happens to specialize in what they're trying to do.

</comment></comment></comment><comment><USER17> pretty handy, here's a jsonip.com clone

[http://jsonip.webscript.io/](http://jsonip.webscript.io/)

<comment><USER18> curious, why would someone need jsonip.com ?

<comment><USER19> to accurately determine the current machine's external IP address, as the one reported by the operating system may be inaccurate (doesn't take into account NAT, proxies, firewalls etc)</comment></comment></comment>


Ask HN : How to sort the comments by time or date? - <AUTHOR> How to sort the comments by time or date ? I'm looking to sort the comments on the "Who is hiring " posts which have a lot of comments (700+) and after I've applied for a few positions, there's no easy way for me to sort the comments so I can start looking at only newer posts.
So, how do I sort the comments by date/time ?
Thanks very much. <comment><USER2> Search allows filtering by story ID and timestamp, [https://hn.algolia.com/help](https://hn.algolia.com/help)

Not sure it will fit your use case because I didn't test it.</comment>


NASA - Remember the 13th - <AUTHOR> http://www.rememberthe13th.com/

<comment><USER2> Really?

Then why is the domain registered at namecheap and the registrant hiding behind WhoisGuard?

NASA didn't make this.

<comment><USER3> No doubt. Not to mention, NASA is subject to the shutdown right now. Their website isn't even available.

</comment></comment><comment><USER4> Completely fake. Here's what happens when you send it an HTTP 1.0 request without the Host header:

        earlz@EarlzWork ~ % nc www.rememberthe13th.com 80
        GET /sign_me_up.php HTTP/1.0

        HTTP/1.0 200 OK
        Date: Thu, 03 Oct 2013 14:36:20 GMT
        Server: Apache/2.2.22 (Ubuntu)
        X-Powered-By: PHP/5.3.10-1ubuntu3.8
        Set-Cookie: wc_session_cookie_099d066d0c4356a36019db6b6adc6718=xo48mwb9bqcu89XumVOt2ur0kROnYwnU%7C%7C1380983780%7C%7C1380980180%7C%7C95c70c35fe67d431307ccee4ac98ffbe; expires=Sat, 05-Oct-2013 14:36:20 GMT; path=/; httponly
        Set-Cookie: woocommerce_items_in_cart=0; expires=Thu, 03-Oct-2013 13:36:20 GMT; path=/
        Set-Cookie: woocommerce_cart_hash=0; expires=Thu, 03-Oct-2013 13:36:20 GMT; path=/
        X-Pingback: http://www.adixy.com/xmlrpc.php
        Vary: Accept-Encoding
        Connection: close
        Content-Type: text/html; charset=UTF-8

adixy is apparently a service to "buy real page views" lol

</comment><comment><USER5> Would a NASA website be operating right now?

</comment><comment><USER6>
      <meta name="author" content="Bilderbergs; FEMA; NASA.GOV">

</comment><comment><USER7> cool landing page, but what do they need the leads/emails for?

<comment><USER8> I signed up with a throwaway email address. I received no confirmation email. Not likely that this is for real.

</comment></comment><comment><USER9> penis enlargement pills?</comment>


The Home Computer Christmas Wars - <AUTHOR> https://paleotronic.com/2019/12/01/the-home-computer-christmas-wars/ <comment><USER2> Commodore had the advantage in the price wars but don't forget the Atari 8 bit home computers. They got into a long battle with Commodore. Then Jack sold his Commodore stock to buy Atari and make the Atari ST while Commodore bought Amiga to make the Commodore Amiga 1000 then the 16 bit wars happened.</comment>


Alphabet Made a Quiz to Help You Detect Phishing Scams - <AUTHOR> https://www.engadget.com/2019/01/22/alphabet-google-jigsaw-phishing-scam-quiz/ <comment><USER2> I do not like that last question at all. Only mail clients should have access to your messages. Yes this is the actual app asking for permission and not a phishing attack per se, but the app can suck it.</comment>


Only HTML CSS and JavaScript Is Not Enough - <AUTHOR> https://twitter.com/ng_real_ninja/status/1267925489613602816 <comment><USER2> CORS policy is probably the most ignored part by budding devs.</comment>