hacker news with inline top comments    .. more ..    21 Oct 2014 Ask
home   ask   best   4 years ago   
1
Ask HN: Microsoft Shop (ASP.NET MVC 4/5) for a New SAAS Web Project
4 points by codegeek  2 hours ago   4 comments top 3
1
Someone1234 2 hours ago 1 reply      
We use Microsoft's MVC stack at work, it is wonderful, particularly combined with Entity Framework.

Off the top of my head the biggest issue with using Microsoft's MVC is not within the framework itself, it is within the wider Microsoft ecosystem.

If you use MVC you now need Microsoft Servers (which cost more), maybe CALs, and you'll eventually need to pay for MSDN (for the latest Visual Studio and tooling, TS Online is wonderful however).

For us it made sense since we're in education so Microsoft gives us tons of stuff for either free or at a massive discount.

If I myself started a small business (with a limited budget) I'd likely look at something which offered a similar experience but without the dependencies (namely Ruby on Rails).

But I'd rate the MVC 5/Entity Framework 6/MS SQL setup alone very favorably. It definitely helps your productivity hugely and if done within the MVC-style will help maintainability somewhat (although you can write anything badly).

It is just the dependencies. That's really the only major downside.

PS - Speed wise it is pretty similar to compiled Java. Faster than [most] PHP (compiled or not).

PPS - If you go this route check out Stack Overflow's wonderful Miniprofiler. Great tool for SQL development (it work with anything Entity Framework can connect to including non-MS SQL servers like Oracle SQL).

2
nicks451 2 hours ago 0 replies      
I think the MS stack is extremely usable especially if you leverage Azure to get started. It abstracts away a lot of the pain points that I've run into with dealing with the stack in my day job (mainly IIS). You should also check out the BizSpark program which will give you access to an Ultimate MSDN subscription and an Azure credit every month.
3
brudgers 2 hours ago 0 replies      
StackOverflow is a huge website. Its still a small Microsoft shop, and Jeff Atwood, Geoff Dalgas and Jarred Dixon pretty much coded it up...and for a long time ran it on a single dev/production box.
2
Paasifier Find the best PaaS for your app
19 points by davidcunha  10 hours ago   10 comments top 9
1
samcday 9 hours ago 0 replies      
I know it's just for the early preview, but I find the fact that it's a PaaS selector hosted on Heroku amusing :)

Anyway, as for constructive feedback - I don't quite understand why many of the Framework options would exist. How does a PaaS "support" Spring? Or CodeIgniter? If a PaaS supports the language runtime, why would it need to explicitly support a framework?

2
mattwritescode 8 hours ago 1 reply      
Just a FYI:

The text on the splash image looks blurred because of the background shadow. Had me thinking I needed glasses. (Chrome 38, ubuntu 14.04)

3
jplattel 9 hours ago 0 replies      
Nice! Would it be possible to filter the frameworks based on the language provided? Just a little bit of UX that would make it easier to use :)
4
ishener 5 hours ago 0 replies      
I think Google App Engine should be added
5
p4vl1n 7 hours ago 0 replies      
when I select "Java" runtime, I would expect to see java frameworks in the second drop down ...After playin' a little - "No PaaS Providers were found!" :(
6
franklaemmer 6 hours ago 0 replies      
shameless plug: fortrabbit the one and only PHP as a Service is missing!
7
revorad 10 hours ago 0 replies      
What are you ranking the results by?
8
RPeres 10 hours ago 0 replies      
omg! exactly what I needed!
9
tfranco 10 hours ago 0 replies      
w00t!
3
Ask HN: Gaming with one arm
49 points by chrissyb  16 hours ago   47 comments top 29
1
ramLlama 14 hours ago 0 replies      
http://www.benheck.com/controllers/

Ben Heckendorn is known for very clever console modifications and has forayed into accessible controllers in recent years. He sells a custom made one-handed controller for a few hundred dollars, and this may be worth a look!

2
ericdykstra 14 hours ago 3 replies      
Hearthstone is a great Collectable Card Game type free-to-play game. A lot of the top players were pros in faster-paced games, like DotA and Starcraft, before switching over. It's pretty fun and fairly deep. I've been playing for about a year. Twitch gaming skills peak at a pretty young age (as young as 25 or earlier) anyway, so switching to something slower is, in some ways, a natural progression anyway.

http://playhearthstone.com

3
xerophyte12932 14 hours ago 2 replies      
What about Strategy games? They are usually mouse-oriented. i haven't played any in ages, so I don't know what's hot these days. But I have spent countless hours on

- Age of Empires Series

- Command and Conquer series (aka Red Alert Series)

- Stronghold Series

I am sure there are modern equivalent of these. Isn't starcraft in this genre?

4
brudgers 6 hours ago 0 replies      
One of my buds from architecture school is quadriplegic from the neck down. It was an obstacle not a barrier. It would have been less of one if the Kinnect existed.

He ran 3D Studio by pushing the trackball and hitting keys with a stick gripped in his teeth...and with a pen, he could kick most of the studio's ass sketching - so long as someone set the sketchbook on his lap...he used that as a pickup line with the ladies.

Your friend is grieving. You can't fix that. But it will work itself out.

5
gfosco 14 hours ago 0 replies      
Some games that only need one hand, or the mouse:

Nimbus, Desktop Dungeons, Cogs, Osmos, Papers Please, Peggle, Bejeweled, World of Goo, Any poker game..

Maybes:

Machinarium, Evil Genius, World of Goo, Civilization V

With a controller like the G13 there's many more which could be programmed to playable state: http://www.amazon.com/Logitech-G13-Programmable-Gameboard-Di...

6
yzzxy 15 hours ago 0 replies      
First of all - lots of turn-based or slower games can be played with mouse only. That might not be his interest, however.

Something like a Razer Naga[1], a mouse with a ton of side buttons, could allow him to play other games with one hand. Probably not FPS though[2]. Other manufacturers will sell similar mice, I just thought of that one first and have no idea if it's the best.

You could get an IPAC[3] or other arcade control board (I've used X-Arcade kits[4] with success for other projects) and build some kind of custom control surface, maybe using a trackball or joystick and some big arcade buttons.

Final idea, if you're crazy: Bolt WASD onto a mouse, and wire in as extra mouse buttons or to a keyboard controller.

[1] http://www.razerzone.com/gaming-mice/razer-naga-epic

[2] Maybe sensors or pedals for movement? Seems like it would be hard to WASD with the side buttons on the mouse. That way you could get good enough mouse fidelity for aiming and still have enough buttons to do stuff.

[3] http://www.ultimarc.com/ipac1.html

[4] http://www.xgaming.com/store/arcade-parts-and-accessories/pr...

7
sbrother 14 hours ago 2 replies      
I bet you could play League of Legends to a reasonable level with a good mouse with buttons mapped to QWER and voice communication over skype. The only tricky part would be activated items, but maybe you could rig something up with a foot pedal? It would be worth it - LoL has become pretty much the only game I play; it's got incredible depth, and a nearly unlimited skillcap.
8
timrosenblatt 15 hours ago 0 replies      
I'm sorry to hear what happened to your friend.

I have no special knowledge on the subject, but I did a quick Google search. I'm sure you might have run across some of these before, but I wanted to share them since I'm pleasantly surprised by the depth of things that are out there.

* http://www.gamespot.com/articles/modder-creates-single-hande...

* http://www.oneswitch.org.uk/1/AGS/AGS-bespoke.htm

* http://kotaku.com/he-built-a-custom-controller-to-help-disab...

* http://www.game-accessibility.com/index.php?pagefile=motoric

9
randomdrake 15 hours ago 1 reply      
There are a lot of really good previous examples of gamers needing alternate configurations that have been popular on the Internet over the years. From gamers that use their head for controls[1], to folks in the same position of having the use of only one hand[2]. Whether it be customized controllers, or just having to re-map a lot of keys or buttons, there doesn't seem to be a barrier to enjoy gaming.

You should let your friend know that they are not alone and they almost certainly can still have plenty of enjoyable gaming ahead of them.

[1] - http://www.nbcnews.com/tech/video-games/disabled-gamer-shows...

[2] - http://www.reddit.com/r/leagueoflegends/comments/120per/ama_...

10
damonpace 14 hours ago 0 replies      
I commend you for helping your friend. When I was a child, my fathers friend lost his left arm and all but two fingers on his right hand in a train accident. My dad hired him to work around our yard and help out. He eventually taught the guy how to tie his shoes with only two fingers. I'm still impressed by my fathers patience and inventiveness in helping his friend get back on his feet. I'm sure you'll find a way to make it happen for your friend as well.

My initial thought is there has got to be some kind of foot pedals for the left handed controls. If you can't find one, take an old keyboard and eliminate all the keys except the ones needed for gaming. Then attach foot pads to the gaming keys he needs. It will probably take some time, but he'll eventually get used to it.

11
kor_ 13 hours ago 1 reply      
Maybe he could try the OCZ Neural Impulse Actuator (if they still sell it). I once tried it and after a few weeks' practise it worked quite well. It uses your brainwaves as input and you can bind different waveforms to certain actions, like pressing a button.
12
wguyman 13 hours ago 0 replies      
I also have one hand and have been gaming on the XBox 360 (and recently the One) for a while. One-handed controllers are hard to come by and a couple links have been posted to this thread.

Many of them were built for the PS2, so you need an adapter to play with something like the XBOX or Playstation, try http://xim4.com/.

Also check out: https://www.kickstarter.com/projects/70308014/kings-assembly...

13
justinmarsan 12 hours ago 0 replies      
My cousin has lost an arm about 10 years ago and now beats me at every single game he owns on ps3, using the standard controller. For some games he'll use his feet for the triggers, but other than that, he just plays with one hand over the controller, and has gotten really good at it.

Looking for alternative controllers might be nice, finding some way to make do with the standard one could also help him gain more agility with the one hand he has left, which will be useful for many other things in his life.

14
cgdangelo 15 hours ago 1 reply      
Sorry about your friend. Good on you for helping him out here.

Unfortunately I don't know of anything in the way of custom joysticks/setups that might be helpful, but maybe I can offer some reassurance for your friend. Even with the standard input devices (mouse/keyboard, controller) people[1][2] have been able to adapt to very extraordinary circumstances. Anything's possible.

[1] https://www.youtube.com/watch?v=bONUFkP3i8s

[2] https://www.youtube.com/watch?v=83nSodg-HTU

15
warriar 12 hours ago 1 reply      
I hope hes right handed.

For PC FPS i would try a mouse with a lot of buttons on the left so you could put wasd on 4 buttons on the left so he could control the shooter enirely by mouse.

Depending on how much use he has with his left arm he could also probably build a simple custom Joystick to replace wasd movement keys...

Also i would get some One-Handed Keyboards for fast Typing with one Hand.

Hope he gets adjusted quickly!

16
cmonroe13 15 hours ago 0 replies      
If he likes PC gaming, there are a few mice that have several extra buttons that you can bind to keyboard input.

I recommend the Razer Naga, or Razer Naga Hex. The hex has 6 extra buttons while the original Naga has 12 I believe. Both mice are in the $60-$70 dollar range but are well worth the purchase.

I stopped in to comment ( my first comment actually ) because games are a big part of my life, and I couldn't imagine a world without games. I'm a game developer by day and player by night. My best wishes go out to him and I hope he continues to keep playing games!

17
jiri 12 hours ago 1 reply      
I hearded about joystick-like device that can be controlled with your feet. Never tried that, but it could solve wasd movement controls for your friend and other actions can be surely mapped on something like Razr Naga.

I couldn't google any of this device, but I saw one in university lab. It was circular board - much larger than usual pedal-size with 4 springs at edges. It may be possible that it was custom built though.

18
VPrime 15 hours ago 2 replies      
Have you looked at the Stinky Board? http://stinkyboard.com/Should be able to map standard WSAD keys to it, then use mouse for aiming.
19
staunch 15 hours ago 0 replies      
With foot pedals and a mouse and he could probably play FPS games at a high level. It's mostly about the mouse hand.

There are also mice with a lot of buttons, like the Razer Naga: http://www.amazon.com/dp/B004AM5RAM

Voice commands in games is becoming real: https://www.youtube.com/watch?v=RmsuTiuRaog

20
thethomaseffect 10 hours ago 0 replies      
There's a lot of portable games that are stylus/touch-driven. Kid Icarus came with a cradle for the 3DS and if he likes RPGs the recent Final Fantasy Theatrhythm would work great. It supports a one-handed mode for the buttons too.
21
NamTaf 12 hours ago 1 reply      
for FPS, I'd be interested if you could recreate the WSAD setup for moving with foot pedals? Your feet can be quite dexterious, just most of us never use them for more than walking. I'm thinking something like using the whole foot to control the buttons, not toes. Something sort of like how a kick drum works maybe, but with two degrees of freedom for the heel and toe?

edit: I mean, hell, dance dance revolution sort of does that already and the savants that play that can do crazy speed with their feet.

There was a girl at my school a couple of years above me who was born with no arms. She could write reasonably well, feed herself, etc. via her feet by using her toes like fingers. I was always impressed with just how able she was. She ended up getting her drivers license and everything with a steering wheel that she can use with her feet.

22
failrate 15 hours ago 0 replies      
A coworker in a different department is missing his left arm above the elbow, and one of his team built him a set of foot switches both to do his job as well as to participate in gaming nights. A gamer mouse with lots of buttons is also included. Then, macros to change the contexts of what the different buttons and foot switches do, and he's able to recover a significant amount of functionality.
23
kubiiii 14 hours ago 0 replies      
Pretty much any rts even if keyboards have practical shortcuts. Some rpg too. I'm playing shadowrun dragonfall with only the mouse, awesome game (rpg with turn based combats, bargain price). But its very cool from you to try to come out with a solution for your friend. It would be useful mostly for fps shooters or rpg.
24
robin_reala 13 hours ago 0 replies      
A typical FPS control setup maps one hand to movement, and the other to observation and actions. If he can work out a control scheme that moves actions to the movement hand (i.e. Q and E on top of WASD if hes a PC gamer) then observation controls could be moved to the position recognition of a VR helmet?
25
bowmanb 15 hours ago 0 replies      
Maybe the Razer Orbweaver[1] can help. Best of luck.

[1] http://www.razerzone.com/gaming-keyboards-keypads/razer-orbw...

26
Jam0864 15 hours ago 0 replies      
Depends what he wants to play. Sim racing could work, as it's mostly foot control with some arm movement for the wheel. Can be done with one arm and one leg if need be.
27
iaw 15 hours ago 1 reply      
How much of his left arm did he lose? (eg, is there a stump with enough motion that a rig could be devised for d-pad control?)

What type of games does he play?

28
CmonDev 11 hours ago 0 replies      
Oculus + Joystick + Eve Valkyrie could work.
29
zalzane 14 hours ago 0 replies      
recommend world of tanks with a footpad set up for wasd
4
Ask HN: Ubuntu-friendly laptop comparable to MBP Retina?
3 points by eegilbert  6 hours ago   9 comments top 7
1
canterburry 4 hours ago 0 replies      
I am also a long time Lenovo ThinkPad fan who switched to Ubuntu. Eventhough I am successfully running 14.04 on my T520 right now, I too have been looking for a Mac alternative. So far, here is my potential line-up:

Razer:http://www.razerzone.com/gaming-systems/razer-blade

Dell XPS 15:http://www.dell.com/us/p/xps-15-9530/pd?oc=fncwx1602h&model_...

2
cik 6 hours ago 0 replies      
I'm using a Sager - you should check them out! The best part is that you custom order it - the way you want it. I configured mine at reflexnotebook.ca and couldn't be more thrilled with the results, three months into it.

Out of the box all of my hardware is supported, though I'm running Mint 17 (same base). The keyboard is a pleasure to type on, though the laptop is a bit weighty. The trackpad is great under linux, something that was sorely lacking on every single other machine I've tried (System76, IBMs, Dells, everything!). Even the function keys are recognized - which was a pleasant surprise over my System76.

3
tucosan 6 hours ago 1 reply      
I was in a similar situation. As a long time thinkpad user, the first thing I did was check out Lenovos current thinkpad lineup and was also very disappointment by the hardware and screen quality. After several weeks of comparisons I simply decided to buy an rMBP, and I couldn't be happier.EDIT: Installing Ubuntu shouldn't be a problem on an rMBP, but you'll probably run into issues where you'll have to fiddle with font-size settings.
4
edent 6 hours ago 0 replies      
Have you considered just running Ubuntu on a MBP?

I've successfully run it on a non-retina machine, and currently have a 2013 MacBook Air running 12.04 (I'm too lazy to update).

The installation is fairly simple and just about everything worked out of the box.

5
nodata 6 hours ago 0 replies      
Why were you underwhelmed? What are you looking for exactly?
6
lixardz 6 hours ago 0 replies      
Uh.. What the actual #%&@ ?? no no suggestions you're not going to be happy with anything.

You need to ask yourself why you want this..You have to realize you aren't going to ahve the same level of display. Switching to Ubuntu you are going to have to make a lot of consessions.

What is that you like about the Macbook Pro Retina? The display? the weight? the size? Go find a laptop with the specifics you like and install ubuntu on it.

7
brudgers 4 hours ago 0 replies      
If you want a MacBook pro buy a MacBook pro. The "beats or comparable to" game is a fucking waste of time, because people assign different values to different features, including brand name, weight, battery life, computational power, screen size, keyboard layout, upgradeability, warranty support. hardware certification, etc. etc.

Dell Precision mobile workstations such as the m6800 are Ubuntu Certified. [1]

The m6800 can be provisioned with:

+ Spare batteries.

+ Raid 5 over three drives

+ Blu-Ray [limits hard disks to 2]

+ Processor: Intel Core i7-4940MX (Quad Core Extreme 3.10GHz, 4.0GHz Turbo, 8MB 57W, w/HD Graphics 4600)

+ GPU: Nvidia Quadro K5100M w/8GB GDDR5

+ 4G LTE mobile broadband

+ Hardware crytpography accelerator

+ Intel vPro Management

+ Ram: 32GB (4x8GB) 1600MHz DDR3L

+ 5 Years 24 x 7 Support with Next Business Day Onsite Service.

+ 5 Years accidental damage service

+ 5 years data recovery service

+ A 17" Display

And of course Ubuntu pre-installed and supported by the hardware manufacturer. [2]

The complete list of Ubuntu Desktop certified hardware is available. [3]

[1] http://configure.us.dell.com/dellstore/config.aspx?oc=cupmws...

[2] http://www.ubuntu.com/certification/hardware/201305-13528/

[3] http://www.ubuntu.com/certification/desktop/

5
CloudFlare SSL Issues Again
14 points by omarkassim  13 hours ago   5 comments top 3
1
eastdakota 11 hours ago 1 reply      
We had a temporary issue in our Singapore data center related to a very large attack targeting a site reporting on the protests in Hong Kong. The issue was limited to that data center. We mitigated the attack and resumed serving HTTPS traffic for free customers from the region.
2
kecebongsoft 12 hours ago 1 reply      
Good thing I setup a secondary SSL certificate, so I just have to pause my CloudFlare and my site is back. But few days ago the same thing happened and lately I've been thinking of switching from CloudFlare, any recommendation?
3
speeq 13 hours ago 0 replies      
CloudFlare is currently completely down for me.
6
How do you communicate if you won't hit an estimate?
65 points by captain_crabs  1 day ago   50 comments top 22
1
edw519 1 day ago 8 replies      
How do you communicate if you won't hit an estimate?

Immediately, with brutal honesty, and positively.

1. Immediately: Never delay communication. Most people will be less upset about the schedule than the fact that they weren't informed.

2. With Brutal Honesty: Explain exactly what's going on. You may end up with a pleasant surprise. "Oh, can we just have xyz then?" or "How can we reduce the scope?" or " How can we help you make this easier." An informed customer/boss is a resource to be used.

3. Positively: Find a way to deliver something by the deadline. "ABC will be delivered as planned on October 31, but we have run into unexpected issues with Feature xyz, so it may not be fully implemented at that time." sounds a whole lot better than, "We won't hit the October 31 deadline." You may even give them options in terms of features & dates. They may not like it, but once they make a decision, they feel more a part of it and you will have bought some goodwill for a while.

2
ColinDabritz 1 day ago 0 replies      
You bring up a specific challenge, how to handle it when you realize a deadline is probably going to be missed. That's one aspect, but you also need to look at why your deadline is going to be missed more broadly.

Here are some challenges that come to mind in software estimation:

1. Estimates are almost always done too quickly, with too little information. If you can wait, spend more time, or reduce the unknowns, do so. If nothing else give it an extra fifteen minutes. If you can say "I'll get back to you with an estimate by ..." (e.g. tomorrow or end of day) that's even better.

2. Estimates are ranges, a probability that the work will be done across a range of time. but are often given as a specific date or amount (e.g. "It will be done tuesday/take 5 working days"). Early or quick estimates may be ranges of 15x or more (e,g, "it will be eight hours to three full work weeks"). Don't be afraid to capture that ambiguity in a range. Others may not understand ranges, so give them the high end if needed, but at least be aware that ranges exist. Often ranges, or high estimates get push back. This is your opportunity to specify what questions need answers, what requirements need refined, and what areas need more design and architecture to reduce ambiguity. These things can reduce ranges of estimates.

3. Know the difference between estimates, targets, goals, and commitments. Confusion between these leads to miscommunication and frustration. Often we'll make a guess like "maybe two weeks" which is a wild instant estimate, and others will see how nicely that lines up with their target date, and believe you have committed to that goal. Commitments should be explicit, and part of your process.

4. Do not negotiate estimates. Managers are trained to negotiate, and a naive manager will almost always reduce estimates through negotiation, which is a distortion of reality. Developers should collect the information they need about the requirements, ask questions, then produce their estimate in isolation, and refuse to change it. The way to change an estimate is to change the requirements, often addressing ambiguity and questions, and re-estimate the work given the new information. This is hard to do, because a "better" timeline can make everyone feel better in the moment, but will lead to problems later.

5. Renegotiate when change happens, or when you are in danger of failing a commitment. This one answers half of the original question, to my mind. If you didn't make a clear commitment, or requirements are changing with out any renegotiation, you have to fix those first. After that, keep a close eye on scope creep, and changes. Change happens, accept that, but make sure that those you have commitments to understand that change has impact on your commitments, and you can either commit to the original work and timeline, or you can commit to the new work, and a new timeline. Holding you to new work on an original timeline is not fair to you, and not a problem to be solved at the developer level. This one can be quite challenging, some people use "change management", itemized / ticket based change requests, even explicit signoffs. If you have trouble here, find what works for you.

6. Learn from history. You won't get it right. A lot. Keep track of how you are doing, improve processes and spend more time refining requirements/acceptance criteria etc. Make sure commitments are negotiated and explicitly agreed to. Keep learning.

7. You will make mistakes. If you uncover new questions, requirements, found work, it was in a certain sense an estimating error, but it has a different fix. If you had a reasonable view of the work to a fair level of detail and spent reasonable time on the estimate, and are still missing your commitment, you have made a mistake. That's OK, especially early on, or in new areas for you, if a team has shifted etc. The answer is, communicate. Let your manager know immediately, as soon as you realize it, that you feel you are at risk of failing a commitment, and you need to revisit. From there, you can investigate the new work, or re-estimate based on your increased understanding of the problem. Perhaps note some data for your historical tracking. Learn. Next time, make a better estimate. It does feel bad to miss a commitment, or even to not make a deadline that someone else set up. That's very human. The way to feel better about it, is to get better at it.

The above is based on my decade of experience as a software developer, and a solid foundation from Software Estimation: Demystifying the Black Art, By Steve McConnell http://www.amazon.com/Software-Estimation-Demystifying-Devel...

I highly recommend the book as a learning resource, and having the whole team, managers included, read at least the first portions of it. It also has specific tools for various estimating challenges.

3
trjordan 1 day ago 1 reply      
My favorite question: "Is the date slipping, or has it slipped?"

What you really need to do is help the person setting the deadlines plan. There are things they're doing that are synchronized with finishing the project, and there are things that simply depend on the project. Marketing may want to publish a blog post. Sales might want to promise a delivery date (or already has). Management might want to claim victory for a Q3 delivery. All of these things are outside your knowledge, and they're frequently based on your initial estimate.

So, over-communicate, but also slip once, and slip hard. If you're a week out, and going to miss by a day, slip the date a week. Fuzzy, frequently communication isn't useful, because nobody can plan around that. Make sure you are clear about the moment in time you want the project manager to go from "I'm worried about date X" to "We've change the date to Y", because while it's fuzzy in your head, it needs to be clear in theirs.

4
Scarblac 5 hours ago 0 replies      
One of the things that McConnell's "Software Estimation" repeats a lot is that estimates are _intervals_. I'm a bit surprised not many people here have mentioned that.

If you give a single number, there's a 100% chance that it's wrong -- you're never going to hit it exactly.

Instead, what you should be aiming for is to give an interval that is correct, say, 90% of the time (so still wrong 1 out of 10 times).

If you do it honestly, the intervals have to be much wider you than you are used to -- the "two weeks" you would usually say is realistically more between 8 working days and six weeks, with 90% confidence.

A major benefit of giving intervals to people instead of fixed numbers is that it makes it really clear that it's not a deadline and can't be treated as one.

If they tell you this is unacceptable, then only give the high number, and McConnell's book.

5
mindfulgeek 1 day ago 1 reply      
Estimates are notorious for all developers, not just new ones :)

Most people have a hard time realizing they are stressed out -- you are suddenly completely freaking out! If you wait until there is a problem, you've waited too long. Risk shows up way before it manifests.

Daily gut checks are an easy way to notice risk. Ask yourself "how is the estimate aligning with the actual work left?"

Once you know there is misalignment, the most valuable way to discuss is focusing on work left.

The most important thing to remember when you know you are stressed out is to take a deep breath and relax. Understanding how you are evaluated for success and primary business drivers will allow you to discuss risk and delays in a language that can influences others and address what is more important.

Things that really help estimations:1. Thinking about work in relative complexity rather than time allocations. More complex work increases time exponentially. Unknowns are almost always filled with gotchas. Any work that is more than a medium in complexity is best experimented on in spikes or broken down into smaller pieces of value.

2. Use your gut. It knows better than your head because these problems are often too complicated and deep to really have any idea how long they are going to take

3. Firm up definition of "done." There is a lot of overhead beyond coding the solution that makes something complete. Having a well known definition of done that everyone agrees on will help consider all the things that are often forgotten.

Go easy on yourself. Your estimates aren't wrong, they are off. You don't make good money because you are solving easy problems with well known solutions. You are creating simple solutions to complicated problems. Estimating anything when its complicated is most often inaccurate...

When all else fails default to Uncle Bob's standard answer: 3 weeks :)

Good luck!

6
nerdy 1 day ago 0 replies      
You should tell them right away. Be honest and upfront. Sleep easy at night. Work without it hanging over your head. Heres why:

- The person who you inform may have others within their organization to update. It reflects badly on them too when they find out last minute something won't be on time and can break all of their internal assumptions about their timeline. They have goals too.

- Delays pile up. 2 days here, 4 there, a week on that other thing before you know it youre a month behind schedule. Its much easier to discuss things incrementally than it is to spring the totality of all delays on them when they believe theyre much closer to a completion date than they really are. But were only a week away, how is it going to take another MONTH?

- Finally, though wed all like to think otherwise clients often make some changes during projects. When those changes occur and youre already on the same timeline, its much easier to discuss how the changes the client is requesting are going to affect the delivery date. This helps with their confidence in you, and their capacity for accurate internal debate about project changes/additions and what it will do to the delivery date.

Estimating development time is incredibly difficult; most methods involve some kind of padding which is obviously not an exact science. There are always hidden rabbit holes, unexpected problems and tasks that were completely unaccounted for. If youre transparent with the client and communicate when there is good news (hey, check out the xyz feature we just finished) as well as bad news like delays, most of them will understand.

7
jaf656s 1 day ago 0 replies      
How you communicate an underestimate will differ slightly if you are a freelancer/consultant compared to an employee. The primary difference being the level of technical sophistication of the person you are telling.

The basics should be the same with either party, though.

Always open the communication lines as soon as you know you are behind. You don't have to say "My project is definitely going to be late" but rather be honest. If you are behind on a milestone, speak up now.

Don't assume you can just make up the time during the rest of the project. The worst thing you can do when your project is running behind is make it a surprise to everyone on the day of the deadline.

When you speak up early, this is also good for everyone else involved in the project. If you are a freelancer, you can work with your client to make adjustments to the scope to keep things on track or they can delay other parts of the project if it is a coordinated effort of more than just your work.

If you are an employee, your manager or team can assess the situation and make plans to make the project successful. This can include changing scope, getting you help from more senior developers, reassigning parts of the project, etc.

There's no shame in this: the ultimate goal is to be part of successful projects not looking like a hero. Plus you look a lot better if you give everyone a chance to come up with a plan rather than just springing it on them at the last minute that you aren't done with your part.

It is also a lot less stressful when your team is working together to work toward a solution. A lot of the stress from this situation is worry about letting the team down or trying to work too much to make up time.

Be prepared for people to ask why you are behind though. Give honest answers. I hope your answer isn't "I underestimated the project so I thought I had a lot more time to surf HN", though.

This means you need to be completely honest with everyone on your team and speak up early so plans can be made. Again, if you wait until the last minute to say something, after you tried working long hours to make up time (and failed), there isn't much that can be done. The project is already late at that point.

This is when you get some real anger directed at you, because you screwed over the team by pretending there wasn't a problem. You also took away the team's ability to make adjustments to compensate and you know.. work as a team.

So really, how you bring up the fact that you underestimated part (or all) of your project isn't really as important as doing it right away. Be honest with everyone about where you stand.

You demonstrate willingness to do this by actually doing it.

8
munirusman 1 day ago 2 replies      
The key is to divide your milestones in very small tasks in hours and communicate this detailed hourly plan with your total estimate. Update your manager/client about your progress as frequently as possible. Twice a week if not daily.

During the project, if you realize that your estimates were originally wrong, fix it asap and communicate immediately. Frequent communication is the key.

9
buro9 1 day ago 0 replies      
As early as you are aware, you communicate it.

The advantage of things like Scrum is that a 1 week sprint size should flag up slippage within a week.

It's hard for people to actually know they're going to miss a deadline, and they might feel that they can course-correct. But if you have a really clear definition of done, and work broken down into pieces that fit within a week, and you do planning each week... then you will know as soon as you slip, that you are slipping. And if the product owner is involved in planning, then there's just no hiding it and he can communicate it upwards.

Things like agile and Scrum are core processes for this... they give you nowhere to hide, and that helps those who need delivery to get that feedback early so they can prioritise what they most want delivered (if the deadline is more important than the totality of the delivery) or how they're going to communicate slippage up the chain (if the totality of the delivery trumps the deadline).

If this is all noise to you, then just do this:

1. Break your 3 month project down into logical pieces of work, each one small enough for you to understand roughly how to do it (realistic work effort) where no single piece of week should be larger than 1 week (if it's bigger, it's a smell that you're estimating badly and don't understand each of the parts involved).

2. Order all of the pieces of work such that you are doing the most important things (decided by the project sponsor) first.

3. At the start of each week declare what you will finish that week, always the most important things you could be doing... and get to work.

4. On Friday, see whether you finished everything you said you would. If you have not... you have slipped and it impacts next week and gets communicated.

10
hcho 1 day ago 0 replies      
As soon as you realise you won't. This will give your customer a bit of leeway in managing expectations, preparing alternatives or what have you.
11
codva 1 day ago 1 reply      
It starts way before you are running over budget. Your entire sales and contracting process needs to reinforce the idea that there are no fixed cost estimates prior to the completion of the discovery process and sign off by the client on the wireframes and/or software specification document.

Granted, 90% of clients don't really work that way. In which case you need to gauge your comfort level with getting them to buy in, or in some cases, you simply have to walk away from the client that has a one page overview of a complex web site and wants a fixed cost, binding bid.

12
stefan_kendall3 23 hours ago 0 replies      
Don't guess at how long it takes to complete work. Plan what you think you need, and then do a week of stories. Based on your velocity, make a confidence interval of dates. Next week, do the same thing.

If they want a fixed date, take 60% of your velocity and you'll be pretty sure your math will work out to give you the project on time.

Anything not based on data is pulling numbers out of your ass, and it's hilariously disastrous every time.

13
pushplay 1 day ago 0 replies      
If you're managing your project in a tool like JIRA you could provide your client with a burn down chart. It's the easiest way to tell at a glance how a project is going, and takes next to no effort to produce.

If you're not managing your project in such a tool then you should be. If you're not breaking your job into small enough tasks that the chart looks reasonable then you should be doing that too. Both these things will force you to come up with better estimates and give you a record to learn from to provide better records in the future.

14
qwerta 1 day ago 0 replies      
There is someone who OWNS the estimates, usually manager. So I just tell him that his estimates were wrong, same way I would open new bug report on software. For my own customers I provide revisited estimate and plan B if they decide to pull the plug.

There is lot of stuff about honesty and so on. After being maintenance programmer for a long time, I would just say: Do not stress about it, and always inform relevant people.

15
Mithaldu 1 day ago 1 reply      
The most important thing is to state unmisunderstandably, before you start the project, that you are making an estimate which has an error range of +/- 3 orders of magnitude and that you will be revising it as you go along.

Once that is clear, the customer is prepared and will be expecting and able to handle estimate revisions whenever you make them.

16
ThomaszKrueger 1 day ago 0 replies      
As many here said, immediately and honestly. Next time make sure you either have enough information to base your estimate off, or way-way-way over-estimate. Stick to your guns. If you finish early, fudge - make the estimate. This way you accomplish two things - you get the time you need and you are seen as reliable and accurate.
17
brudgers 1 day ago 0 replies      
The way to handle estimates is to have milestones. At the milestone, scope, cost and schedule changes are formally decided.

If you can't pick reasonable milestones, there's no way you can make a meaningful estimates. And without reasonable milestones there's no way to analyze where the process slips and to learn from it.

18
scotty79 1 day ago 0 replies      
Don't. Never provide an estimate unless asked. Same goes for reestimation.

If anyone asks you why estimate wasn't accurate provide him with list of all the things you've done since estimating related to the task, if he inquires further also unrelated.

If you see anyone that thinks that estimate is a promise or a price, remind him that it's just poorly informed guess, and any decission based on a guess is gambling. And you can't win them all. You can't even win enough to break even.

Estimate is such a misused word. It suggests that some process of estimation was performed and given number is result of that process. One might hope that some math was involved. In reality this word is used for numbers about the future pulled straight from someones ass.

To get an actual estimate of what will be done and for when involves a team, planning poker and few sprints to measure team velocity.

All above is for when you are employed. If you have your own customers pad heavily both the budget and the deadline. Even if you think you are pessimistic in the end turns out that you were still to optimistic, because task mutated.

19
PMPThatcher 1 day ago 0 replies      
I think part of the problem here is the way we estimate duration. Estimates won't always be right, but they shouldn't be always wrong. If you spend the time to break phases into milestones or smaller work packages your estimates will generally become more accurate.
20
gentlestone 12 hours ago 0 replies      
Such huge debate about estimates - for what? Have you ever thought about estimate as a waste?Is it not better to manage the software development as a pull system? Instead of push theEstimate-driven development?
21
albakes 1 day ago 1 reply      
HONESTY and just do your best. Be apologetic.
22
ExpiredLink 1 day ago 1 reply      
Don't let yourself be fooled:

http://www.quickmeme.com/meme/3u8ysq

7
Entirely algorithmically generated music album is now on Spotify
10 points by bozho  1 day ago   4 comments top 3
1
yzzxy 21 hours ago 1 reply      
Has anyone done a project with a genetic algorithm and quantitative input from humans to produce generative music?

Seems like it would be not to difficult to source listeners via some kind of songbattle site[0] or Mechanical Turk if you wanted to to AB tests.

[0] Maybe different strains of the same algorithm competing head-to-head rather than through AB testing?

2
thoughtpalette 1 day ago 0 replies      
Great job! Is there a way to mix up the instruments used? Most of the songs sounded very similar because of the starting piano keys. With the exception of "Life Talks to a Story" which I found to be the most diverse.

Cool stuff!

3
em3rgent0rdr 1 day ago 0 replies      
great job! Sounds great!
8
Is There a 'Modern Perl' for Python?
15 points by reachbrian  1 day ago   7 comments top 4
1
esaym 1 day ago 2 replies      
I think modern perl was (is) all about standardizing on what frameworks and conventions to use. It was a unifying of ideas.

I suppose for python, with its motto of 'one way to do it', doesn't suffer from a need to unify.

That is one of the reasons I have never been able to pick up either ruby or python. I just find them boring.

I was given the chance to take over some ruby projects at work recently. I powered through some popular ruby and rails books over the weekends, not in an attempt to learn ruby, but trying to learn cool hacks with it. You know, stuff to impress people with. The 'hubris' that perl people love. And well, I couldn't find any.

2
theworst 1 day ago 0 replies      
Not familiar with Modern Perl, and I guess you could call 2007 not modern... but check out http://python.net/~goodger/projects/pycon/2007/idiomatic/han...
3
lmm 1 day ago 1 reply      
Python has far less need for such a thing because there's a lot less cruft, thanks to a greater willingness to deprecate (particularly in v3) and the policy of "there should be one way to do it".
4
27182818284 23 hours ago 0 replies      
I'm a big fan of PHPTheRightWay as a primer, so I'd kind of would love to see the same thing for Python. Helps get folks up to speed.
9
Raspberry Pi book giveaway
5 points by wolframdonat  20 hours ago   discuss
10
Ask HN: Why learn non-JS languages/framework?
29 points by ziikutv  1 day ago   35 comments top 20
1
Kronopath 1 day ago 1 reply      
This feels like what happens when a web developer fails to realize that the web is not the be-all-and-end-all of software development.

Do you want to create fantastic 3D graphics and visual effects? Best learn C++ and OpenGL.

Do you want to develop a highly resilient parallel system that can be patched without downtime? Learn Erlang.

Do you want to program an embedded system, or anything where you need to be close to the hardware? Learn C.

Do you want to program mobile apps? Java, Objective-C or Swift.

Do you want to "program" hardware on an FPGA? Verilog.

Do you want to quickly make 3D games or other interactive experiences? Try C# and Unity.

Do you want to advance your own knowledge of programming and computation, even if you don't have a particular platform restriction? Learn any language in a different language family than you're used to, something like Clojure or Haskell or Prolog.

And as you get familiar with other languages, you'll find it's easier each time to pick up the next one.

Your question might better be phrased as, "As a web developer, what are the advantages to learning non-JavaScript-based web frameworks and languages?"

With my limited experience in the web world, the only good, practical answer to this modified question that I can come up with is "diversification". If all your eggs are in one basket when it comes to programming skill, you're very vulnerable to a language or toolset falling out of vogue. I know some Flash developers, for example, who have been absolutely devastated by the happenings of the past several years, because their toolset was far too rooted in Flash. JavaScript is pretty ubiquitous these days, so I doubt something quite that dramatic would happen to it, but it's possible that it couldfor example, I can imagine best practices shifting over the next ten or twenty years so that nobody writes Javascript directly anymore, but only languages that compile to it. I'm not saying that will happen, but it's an example of something that could.

2
mrcwinn 1 day ago 1 reply      
You don't sound even minimally stupid. :)

I wouldn't necessarily advocate any of those specific frameworks, but I do think there is life outside of JavaScript. I actually don't think JavaScript (particularly on the server) is a very good language at all. Blasphemy, I know.

As someone who has spent time with JS frameworks like Ember, Meteor, and the rest, as well as libraries and component systems like Rendr, React, and Backbone, it's certainly not the case that JavaScript is free of frustration. In fact, I've found the opposite to be true: despite the enthusiasm, some of these solved a bunch of problems only to create others.

The truth is, if you focus on being a great engineer then picking up another language and framework isn't very difficult. It will make you a better programmer to see how other systems solve problems.

Not to speak out of both sides of my mouth, but I do advocate being a master at one or two languages and learning how to write idiomatic code. I just think there's room for more than literally one.

If someone tells you that Node is here to save us all from certain disaster and JavaScript is the One True Answer, I would simply nod your head, smile, say thank you, and then run as fast as you can.

3
dreamweapon 1 day ago 1 reply      
Basically JS represents a very narrow slice of what the world of programming is really about. It's just a weird and artificial environment in many ways. Also, despite its current success, it's bound to go away, eventually.
4
rmchugh 1 day ago 0 replies      
It really depends where you are in your career. If you are just starting out and would like to work in general web development, committing yourself to JS only would be stupid beyond belief. That would assume that JS based frameworks are going to be ubiquitous in the near future. They definitely won't be and there are many reasons to doubt that they will be ubiquitous in the long term as well. The same can be said for any language or framework, language convergence does not seem to be happening. More likely the landscape will remain unstable in the medium to long term. Therefore, as a generalist web developer you will be better served by polyglotism. Learn MVC and other application design patterns. Learn server side programming and client side programming. Learn SQL and others ways of interfacing with persistence layers. In short, don't stop learning and don't assume that there is one holy grail or one right way to do it. There are many jobs and many tools. Being a good programmer is about finding a way to match the tools with the job.
5
chriswarbo 1 day ago 1 reply      
Why learn anything other than x86 machine code? ;)

Seriously, from a software engineering perspective, the past decade has been a peculiar time: JS used to seem like a joke to many, but it's got past that and is now a serious contender as a platform compared to established ecosystems. However, we're also starting to see other languages include JS as a target platform; once that matures, those other ecosystems can piggyback on JS's features, and it loses much of its appeal.

From a computer science/hobby programming perspective, JS is a 'Jack of all trades, master of none'. If you only know JS, you might get really good at churning out code, debugging language-specific nuances, sculpting libraries to your whim, etc. but I would argue that you won't be really good at the big-picture stuff.

Without the perspective of multiple paradigms, you might not see the wood for the trees. Your thinking will be a fuzzy mixture of important ideas lost in a sea of JS implementation details; you won't have the clarity that comes from thinking about a problem from multiple perspectives.

It can be difficult to learn a different technology; especially if it's not by your own choice. The key is that, once you've got past the initial "It can't even do X, Y and Z!" stage, you'll realise that:

  - It *can* do X, just in a way you didn't recognise because you didn't fully understand X  - It can do A, B and C that you never even knew existed  - Y is actually an anti-feature, which you didn't realise the problems of before
With all that said, if you're trying to learn new things, there's not much 'bang for your buck' going from JS/Node to Python/Django, Ruby/Rails, PHP/Symfony, or even whatever Perl's up to these days, since those languages are all very similar; of course you'll find a few nifty frameworks/approaches which are popular in each, but if you look around on GitHub you'll usually find slightly-crappier reimplementations in most of those other languages.

If you want to get some real "Aha!" moments, try something out of your comfort zone like Erlang, Haskell, C, FORTH, Prolog, Maude, Scheme, etc. (admitedly JS is like a cheap knock-off of Scheme, but those missing pieces like call-cc, tail-recursion and macros can drastically change the mindset of its users).

If you want to get stuff done, stick to what you know ;)

6
mhartl 1 day ago 4 replies      
Is there any framework in the JavaScript world as mature as Rails or Django (or with as many features)? This isn't a rhetorical question; as the author of the Ruby on Rails Tutorial, I'd like to know what (if anything) I should be looking at next.
7
j13z 22 hours ago 0 replies      
I'm surprised no one mentioned single page web applications -- that's where I see JavaScript's strength at the moment, compared to the other server-side frameworks you named.

JavaScript: While Node.js is awesome, it is definitely not the best choice for everything -- not everyone needs its features (despite the hype). But if you want to build web apps on the client side, you have to either use JavaScript, or compile to JavaScript.

A client side web app however still needs a back end API. The good thing is, if your front end runs (mostly) on the client side, you can pick almost any language / framework for the back end you want (e.g. Python).

> I am a die hard Python lover, but I do not know what do to at this situation.

Now if you don't know Django yet, my suggestion would be to learn both Django (given your Pyhton background) and one of the client side JavaScript frameworks, e.g. Ember.js, Angular.js, React.js or maybe Meteor (depending on your use case). (And if you learned both Ember.js and Django, you probably get an idea of what Ruby on Rails is like ).

8
ams6110 1 day ago 0 replies      
Ten years ago (or less) if you had proposed building ANYTHING beyond basic form field validatation logic in JavaScript you would have been laughed out of the room. JS/Node is popular now but it's a fad. Things that seem exciting are really just reinvented wheels when you look closely. That said it's not a bad idea to learn it. Just don't think it will be something you're using heavily in 5-10 years. Same is true of any other language in the space though.
9
vqc 21 hours ago 0 replies      
Paul Graham has an essay discussing what he calls the "Blub paradox." http://www.paulgraham.com/avg.html. Perhaps the discussion there isn't immediately applicable to your question, but I think some aspects of PG's discussion are abstractable and applicable.

Ultimately, if you don't know what the other options are and their strengths and weaknesses, you will only ever have a hammer. And you won't even know that your only tool is a hammer. And you'll be trying to eat with it and sew with it, thinking that it's your only option.

If your life depends on manipulating bits. You should learn all the ways to manipulating bits. Because you will then know the best way to manipulate a bit in any given situation. Maybe you should be focused more on one than the others, but that doesn't mean you should ignore everything else.

10
temuze 1 day ago 0 replies      
> Why would I want to learn

First off, because learning is good for you! Even if you dislike a language, there's probably something to learn from it if it's widely used.

There's a lot of great developments in the JS world and Node has really pushed the envelope in terms of asynchronous IO and making it easy to use web sockets and such. That said - most apps you'll make don't need some of the more unique features of Node and personally, I find it's easier to make web apps in high level languages like Python.

That said, it comes down to personal preference. It's the ol' optimization vs. discovery problem - you can't figure out what the best tool is for you without exploring new things.

I wouldn't worry about JS/Node replacing server side code, to be honest. Python and other languages are slowly going in the same direction (see Python 3's asyncio module). Learning a new framework or language is never a waste of time.

11
pointe 1 day ago 1 reply      
Right tool for the job. If you think JS solves everything I would propose you take a few introductory CS courses ;)
12
rubiquity 1 day ago 1 reply      
1) Learning different programming languages is one really good way to grow as a programmer.

2) The web is just one of several mediums for delivering content these days.

3) Node.js has a highly suspect concurrency model that might not be suitable for all the various types of programs you could be building.

13
ep103 1 day ago 0 replies      
Because the only way to learn the answer to that question, is to learn why people are using the other languages, which in turn, likely means researching them and learning them for yourself.

To answer your question more on point, the first thing you'll find is other languages add much, much more safety into their language than js-node can. Indeed, that's what makes js-node as much fun as it is. But if you're a new business owner, and you have to choose between building your server backend on java/c#/etc technology, which can be rigorously checked for stability, and js, chances are high you're going to go with the languages that have such automatic checking features.

14
yogsototh 1 day ago 0 replies      
Each framework, programming language can learn you something new. Many framework/languages feel very similar.

If you really want your mind to learn something you can get back to your JS code, you should try to use a functional language:

- Clojure (I recommand compojure-api for the server and reagent in clojure script for the frontend)

If you really want to blow your mind:

- Haskell (scotty if you want to start small, Yesod if you want all batteries included) for the back and Elm (for the frontend)

It will make your code cleaner in the end, and you'll start to focus on the important stuff instead of just the syntax.

15
grimtrigger 1 day ago 0 replies      
One good reason is the market. The wider your skillset, the greater your opportunities.
16
msutherl 1 day ago 1 reply      
None of the existing answers seem particularly convincing to me. Here's how I have chosen: pick the framework that is most popular with the people you want to work with, projects you want to work on, or companies you want to work at.

If you're building simple websites for clients (publishers, small business owners, etc.), PHP is probably still the best choice, and usually Wordpress. It runs with no config on standard web hosting platforms and you mustn't underestimate the power of the Wordpress plugin ecosystem + the fact that most people are comfortable with Wordpress.

If you're building more advanced websites (not web-apps) for clients, Django is a great choice, in large part because it has an excellent drop-in admin panel, but also there's a ton of third party apps available.

Ruby is also a good choice for this, having an even more solid ecosystem.

That said, Ruby is trending down, Python is trending up. Also, hipsters are now learning node.js and nearly everyone who went to engineering school knows Python. Hipster savants are learning Go, Clojure, Haskell, and Scala (in order). Who do you want to work with?

node was built with event-driven apps in mind. In other words, it's for web apps. It would be unwise to build a traditional website with node unless you have a particular reason to.

Same with Go, Clojure, Haskell, and Scala.

If you want to work at a cool startup, you won't do yourself a disservice learning node. If you want to work at a cool startup doing more hardcore stuff (think Firebase or Cloudfront), you wouldn't do yourself a disservice learning Go or Clojure.

If you want an all-around framework and to broaden your skills, go with Ruby or Python. If you're more of a hipster (aesthetics, web-only) then choose Ruby. If you're more of an engineer (academic, data science), choose Python.

Another perspective on Ruby: Rails skills will be in demand for maintaining old code-bases for awhile into the future, even if it's declining in relative popularity.

17
lhnz 1 day ago 0 replies      
I think JavaScript's here to stay, which is why I've specialised a little in it recently. However, I also think that there are lots of programming concepts that are moving from other languages towards it.

It's worth exploring a few other languages to just get a greater feel of the future, and to also protect against the chance that JavaScript loses its ground.

18
mackwic 1 day ago 0 replies      
It's like learning a new programming language: the more you know how to speak/code/design, the more you can express and understand others.

You should have a look to rails, it's still the state of the art in term of framework design. The java/scala Play framework is also worth trying.

19
farresito 1 day ago 0 replies      
To be honest, I would personally choose python over node any day when developing web applications. Before Go appeared into the scene, I would have told you to go with node for concurrent server stuff. There are plenty of libraries written for node, though.
20
n0body 1 day ago 1 reply      
you should learn perl and catalyst, because they're awesome :)
11
Ask HN: Would you start a new venture with your significant other?
5 points by relaunched  18 hours ago   9 comments top 9
1
jenmcewen 17 hours ago 0 replies      
Excellent question. Five years ago, I started my company with my partner. Before that, I joined his first startup. All in all, we've been working together and living together for almost 10 years. Our families are close and we have the same group of friends. Basically, we're around each other all. the. time.

Both our current company and our last one were in the adult space (sex toy design and manufacturing, and our adult mobile app store). For a few years we ran both companies simultaneously, mostly from home in a room that was both our bedroom and office (because 1. #startuplife and 2. adult startups don't usually get funding that affords us office space). We even moved to a small factory town in China for a couple of years to lead a group of designers and engineers and oversee manufacturing, where we had no friends aside from each other.

Sounds maddening, doesn't it? Except it isn't.

Some might say there are a lot of land mines here. Having virtually no separate life from your partner is dangerous, working in the adult space can be hazardous to your sex life, the pressures of running a company can turn you against each other. But only you and your partner know how you tick together. I believe that as long as both of you are putting your all into it (the relationship and the business) AND you genuinely love and admire your partner for who they are, vice and virtue, it can be an incredibly rewarding experience. You'll both be working for the same dream personally and professionally. Remember some of the greatest companies in the world are family-owned.

Things I would look out for are not so much about what your partner does or their personality traits, but more about how you both are together. How do you argue? How do you make up? Do you turn to each other when you're under stress? Do you value each other's input? Do you inspire each other? Can you tell each other when the other is slipping up? Can you handle harsh criticism from the person you're most vulnerable to?

If you haven't already, you need to learn how to argue. Say what you mean, criticize what they do not who they are, and when you're done, apologize right away. Both of you. Actually, both of you should get used to apologizing a lot. I've found that because you're under a lot of stress, the smallest jab can become a war wound. Likewise, offer accolades often too. Unlike traditional business partnerships, you don't get a lot of emotional distance when you work with your significant other. I'm not suggesting you coddle each other either. You need to learn how to give and take criticism with the understanding that it can be emotionally charged and received.

You should inspire each other and feel accountable to each other to work efficiently and effectively. If either of you don't feel this way about the other, I'd advise against working together because inevitably one or the other will feel they're pulling all the weight. You don't get extra leeway because you're sleeping with your business partner.

Speaking of sex, embrace the quickie. Because, let's face it, you're not gonna have a lot of time all the time.

Lastly, and importantly, don't shit with the door open. Also, take a shower, brush your teeth, put on pants. Keep some of the little mystery you have left. :)

2
uptown 7 hours ago 0 replies      
Every wedding is different - but planning a wedding tends to be a stressful, time-consuming occasion for many couples. I suppose it depends how elaborate yours will be, and how much work will be involved, but by linking your app launch to your wedding date, you're adding a hard-date which is likely to increase the pressure on both of you. I wouldn't have a problem building a business with a significant other - but I wouldn't ever link it to a wedding day. Enjoy your wedding day. The last thing I'd want to be doing is thinking about why something isn't working right on my AWS instance while family that flew across the country to see me want to catch up and spend time together.
3
ishener 5 hours ago 0 replies      
Me and my wife are working together on our new app (http://alephz.com). It's very early stage, and it's really just a side project for now, but I can see it's going well. I think the secret is to have a very clear separation of roles. For example, in our project I'm doing the technical stuff, and she writes the questions, and moderates the community.

Also, I think it's good for our relationship because we share the same hobby. I don't know how it's going to be when working together on something that isn't a side project, but a day job.

4
brudgers 7 hours ago 0 replies      
Starting a company with your significant other is significantly more likely to be successful than dogfooding an application at her wedding...or maybe 'her first wedding' is a more appropriate term.

There's business. There's what's actually important in life.

Good luck.

5
davismwfl 17 hours ago 0 replies      
I have done it, and I grew up in family owned businesses where my parents would build something then fail or sell it and go to the next thing.

My personal experience has been if you two communicate well and can work together well on other tasks, then it is just extending the partnership. With my wife now she is involved in aspects of the business and does awesome things for the business. However, she doesn't want a day to day role because she likes having some separation, which honestly has really been the best for us.

We work really well together because we respect each other for what we bring to the table, and for the most part we can swallow our egos.

I'd say for what to watch out for: having separate time is important, having the ability to separate work from home is critical, having time set aside where work topics are not a focus etc. Respecting each others decisions and abilities as well as checking the ego is very important. I don't believe it is possible to say you can't talk about work at home etc, but you have to be able to have conversations about life outside of the job. To me that is no different than dedicating time to work out, having hobbies together etc.

6
gregcohn 13 hours ago 0 replies      
I can think of several prominent startup couples that have made this work successfully. Wildfire (acq. Google) comes to mind as a recent one.

There have also been some spectacular meltdowns too, and in general, intimate relationships between senior executives tends to correlate to dysfunction.

A lot will depend on your personalities and skill sets. You will get pushback from some investors (though traction has a tendency to quell pushback of all kinds). But you could do worse than starting with someone who deeply understands your target audience -- and with whom you know you're compatible.

I'd do a "pre-nup" agreement on which one of you is going to bounce if it doesn't work, and call it an experimental situation.

7
Gustomaximus 15 hours ago 0 replies      
Another consideration is for 'person 3+'. It's one thing to work between the 2 of you, but if your bringing a third (or more) into this environment it may be difficult for them. When they disagree/debate/argue with your partner this might cross into your relationship with them. I wouldn't say this cant work, but it should be considered to avoid issues.
8
eddyparkinson 16 hours ago 0 replies      
Am sure PG did a post on that topic, he said maybe. He said, it depends if they would make a good co-founder, do they have the co-founder skill set (self starter, etc)?
9
jordsmi 17 hours ago 0 replies      
I would not. I've had enough bad experiences working with just friends, I could see it going even worse if you do it with your SO.
12
Ask HN: Establishing an open source project organization
5 points by moeadham  21 hours ago   3 comments top
1
jonafato 20 hours ago 1 reply      
Can you elaborate on your post? It's currently a bit vague.

There are many examples of organizations created to support open source software: the DSF (https://www.djangoproject.com/foundation/), the ASF (https://www.apache.org/foundation/), and the GNOME Foundation (http://www.gnome.org/foundation/) are a few prominent ones. Are you sure you need this level of formality at this point, though? This carries a certain amount of overhead, and if you mean 501(c)(3) when you say "non-profit", it's a long process that may not go well (http://blogs.gnome.org/jnelson/2014/06/30/the-new-501c3-and-...).

It sounds like you're talking about a relatively new project with a small number of contributors. Would it be possible instead to make an arrangement with the core developer(s) to support the project financially? You may be able to structure this as a normal contractor agreement or via services such as Gratipay (https://gratipay.com/, formerly gittip) or BountySource (https://www.bountysource.com/). This would allow you to contribute while deferring the overhead of an organization until there are more people and resources involved.

13
Ask HN: Where to get Finnish math books
7 points by fasteo  1 day ago   11 comments top 4
1
egor83 1 day ago 0 replies      
You might try asking in the Finnish subreddit:

http://www.reddit.com/r/Finland

It's not very big, but somewhat active.

Then there's a Finnish-language one:

http://www.reddit.com/r/suomi

you might try there if the first one yields nothing.

Good luck!

2
ttur 1 day ago 1 reply      
The company Sanoma Pro sells those books, but looking at their (Finnish only) web store, getting them delivered outside Finland might be a challenge. I recommend you contact their support at tuki@sanomapro.fi and ask them how you could order to Spain, or find a Finnish proxy to send you some.
3
drallison 1 day ago 0 replies      
I'd try the Academic Bookstore which has a large stock of books of all sorts: www.akateeminenkirjakauppa.fi/. See also, http://www.bookstoreguide.org/2007/10/akateeminen-kirjakaupp.... The website can be navigated in English, Swedish, and Finnish. The book series you appear to be looking for, Matikka, can be found via the on site search engine.
4
kape 1 day ago 1 reply      
https://sanomapro.fi/static/samplepages/000000000000517958/

You can find free samples showing few excercises. There are for example basic multiplication assigments. That book is for 3rd graders.

(I went through finnish elementary school and I think they taught multiplication tables for us on the 3rd grade (9-10 years old)

14
Ask HN: How, if at all, do you build infrastructure for side projects to scale?
12 points by relaunched  2 days ago   7 comments top 7
1
Oculus 1 day ago 0 replies      
This all depends on the goals of your side project. If the goal is something other then learning how to set up infrastructure, then deploy your app on Heroku. You get most of the difficult problems dealt with and only have to focus on a couple configurations. Yes, admittedly Heroku is pricey when you start to scale up, but keep in mind that your time isn't free and that you'd need a considerable amount of traffic before it makes sense to spend a lot of time on properly setting up your app to scale.

On the other hand, if you want to learn how properly design a web application to scale, I'd suggest to get a couple boxes on DO[1]. This[2] article describes the common design for 99% of applications on the web (The last 1% is reserved for companies that have achieved enough traffic to justify hiring their own ops team). Finally, I'd suggest you read through this[3] slide deck. It goes through the steps of scaling up your application from one server to a cluster of machines.

1 - https://www.digitalocean.com/

2 - https://www.digitalocean.com/community/tutorials/5-common-se...

3 - https://speakerdeck.com/modulus/planning-for-the-horizontal-...

2
tlubinski 2 days ago 0 replies      
All on one box until it gets some traction. But I always setup an external monitoring (e.g. pingdom) service to get a notification, when something is down and a cronjob for daily (db-)backup.

Scaling steps with traction:

1.) dedicated server for DB

2.) loadbalancer (AWS ELB) & 2nd app-server

3.) scripting server mgmt (AWS OpsWorks, chef, puppet, ...)

4.) adding missing server roles (e.g. caching through memcache) to scripts

5.) deployment, up-/down-scaling with button clicks

6.) Slave-DB (more for ongoing backup and fail-over than for read-distribution)

7.) if you don't use AWS ELB don't forget to make sure the LB is not your single point of failure

Usually I have more than 1,000 registered users before I start with scaling step 1.

3
nyddle 10 hours ago 0 replies      
I use Heroku. You can use it for free and scale with one click if your project gets off the ground (or you are hitting HN front page). The downside is that Heroku gets very expensive as you add more resources.
4
MalcolmDiggs 2 days ago 0 replies      
For a true side project (as in: I'm probably going to forget about it in a couple weeks and let it fade away), I don't bother with any of that.

If it's a professional project in any sense (as in: something I'm being paid to do) I'll at least route the DNS to a load balancer, and I'll use some kind of hosted RDS or NoSQL service for the DB. That's kind of the bare minimum effort (just in case the client is right about the product getting a million hits on the first day...).

But for 99% of side-projects, you can build and refactor for scaling concerns after you've done practically everything else. Scaling is the ultimate "Champagne Problem".

5
ishener 2 days ago 0 replies      
For side projects I have found App Engine to be the best choice. The free quota gives you time and space to develop and explore if this project is of any worth. And if suddenly there's an explosion you really don't need to do anything other than enable billing... (of course, giving that the design of the model is scalable)
6
hashtag 2 days ago 0 replies      
None of that until it does scale. Speaking from prior experience of previously running on our own server setup (a long time ago before cloud and hosting were the norm, after scaling on AWS, and to current stuff.

Worry about server setup when you have those problems or otherwise you might be over optimizing the wrong things.

7
walterbell 2 days ago 0 replies      
You can host static content on github pages, which includes a CDN.
15
Ask HN: Use of Palantir (other machine learning technologies)
4 points by Apoorv02  1 day ago   discuss
16
Ask HN: Help Me Understand Yosemite's Lock Screen Apple Icon?
5 points by mikemajzoub  1 day ago   4 comments top 2
1
teamhappy 1 day ago 2 replies      
Here's a screenshot: https://farm4.staticflickr.com/3851/14147481657_389c093f30_b...

Looks like nothing but branding to me, but I guess you could argue it provides some sort of consistency with the status bar. It might also be preparation for a more interactive lock-screen similar to what iOS 8 offers (http://9to5mac.files.wordpress.com/2014/06/img_00071.png).

2
fit2rule 4 hours ago 0 replies      
I've got multiple machines in my work environment - Linux and Apple boxes. I don't often do it, but sometimes I forget what I'm using when I unlock - maybe they put an Apple there to brand the screenlock so that there wouldn't be such confusion?
17
Ask HN: Are there any innovative startups in the porn/adult industry?
124 points by rblion  2 days ago   124 comments top 34
1
Faploid 54 minutes ago 0 replies      
Hi guys, great discussion! @Striking, thanks for mentioning our company Faploid! Due to the overkill of free porn online these days, piracy and the overkill of scam websites, we decide to create http://www.faploid.com.

Faploid hasnt officially launched, but has already build an active audience, is socially accepted and actively mentioned and promoted by various mainstream media outlets. Faploids users are as diverse as the content we serve. They are socially engaged, digitally equipped and searching for safe and quality adult content in an user friendly environment.

All content including movies, pictures, articles and more are based on our user's taste and interests. Faploid evaluates millions of new adult content every day and uses this information to match content to their personal interests and then delivers them automatically to their personal Faploid magazine.

Our users aim high and for that reason we only work directly together with the best publishers/content owners in a variety of niches from A to Z. For them Faploid isn't only a trusted partner in brand building, but also a quality partner in sending them traffic of people who are seriously interested in their content and willing to pay for safe and quality adult content.

After a long time of developing and deal making, we're in our run up to public launch. In the upcoming months, partly because of the enormous positive attention weve received from both (mainstream) business and consumer side, we will invite all the subscribers on our waitinglist step by step.

Cheers, Team Faploid

2
garethsprice 2 days ago 3 replies      
Cindy Gallop's "Make Love Not Porn" (http://www.makelovenotporn.com) is trying to solve some of the issues around the rise of Internet pornography (addiction, detachment from intimacy, unrealistic/degrading portrayal of women, etc).

She's approaching it from a great, sex-positive way but is having issues whenever the company touches the "regular world" - hard to get funding, taken seriously by non-adult industry people, payment processing, etc.

The "problems" in Internet porn do not appear related to reducing barriers to access or better tech, but in solving issues with how people cope with sudden, instant access to a historically unprecedented amount of material.

Yet again, porn is trending ahead of regular tech use, which is also starting to deal with the same issues of addiction, information overload, how to monetize premium content in the face of a vast universe of free, tech saturation causing detachment and loss of intimacy (and the controversy over whether it does any of these in the first place).

3
cindygallop 2 days ago 1 reply      
And to answer your question even more specifically - here's a list of founders and ventures doing innovative things in this space:

Kit Maloney, Oactually http://oactually.com/

Cyan Banister, Zivity https://www.zivity.com/

Tina Gong, HappyPlaytime http://happyplaytime.com/

Sarah Jayne Kinney, UnboundBox https://unboundbox.com/

Dema Tio & Hermione Way, Vibease http://www.vibease.com/

Danny Wax & Tyler Elick, Spreadsheets http://spreadsheetsapp.com/

Akbar Dhanaliwala, MinnaLife http://www.minnalife.com/

Kathleen Funk & Alan Harris, XSync http://xsync.com/

Colin Hodge, Down https://www.downapp.com/

Ben Tao, Offbeatr http://offbeatr.com/

Kaitlin Prest & Mitra Kaboli, AudioSmut http://audiosmut.ca/

Roger McNulty, Gasm.org http://gasm.org/

Joe Nelson, TheyFit http://www.theyfit.co.uk/

Meika Hollender, Sustain http://sustaincondoms.com/

Sherif Maktabi, Glance http://www.glanceapp.info/

Cassie Robinson http://www.cassierobinson.net/

Kathy Harris, Slixa https://www.slixa.com/

Christian Thorn, Pinsex http://www.pinsex.com/

4
frankydp 2 days ago 1 reply      
The guys I know in the industry are mostly on the bleeding edge of stream tech both hardware and software. The sheer size of the industry in proportion to the entire internet means that some giant portion of all IT in the world work in the space.

The guys I know all communicate in private communities though, and not for the taboo reason but because the industry is overtly hostile and aggressive towards competitors. There are only 3-4 big players and they play dirty(no pun). They own the pay sites and free sites. They leak their competitors product on their own free site and pair it with upsale ads to their own sites. It is very dog eat dog and hard to innovate in because of the players not the taboo.

5
cindygallop 2 days ago 1 reply      
I'm delighted you ask that question! I can tell you that there are plenty of us, but that as #sextech entrepreneurs we fight a battle every day to build our startups. Every piece of business infrastructure any other startup can at least take for granted, we can't, because the small print always says 'No adult content'. This is me and other #sextech founders interviewed about this by Fast Company:

http://www.fastcompany.com/3029634/bottom-line/the-difficult...

and the Daily Beast:

http://www.thedailybeast.com/articles/2014/05/29/silicon-val...

Silicon Valley welcomes innovation and disruption in every other area of our lives except this one - which is why I gave this short talk at New York Tech Meetup back in Feb on why the Next Big Thing in tech is disrupting sex, and intro-ed Colin Hodge of Down and Dema Tio of Vibease to demo their products (go to sex+tech in player):

http://mlb.mlb.com/media/player/entry.jsp?calendar_event_id=...

and why I organized a 'Changing The World Through Sex' track at Social Media Week New York also in Feb:

http://socialmediaweek.org/newyork/events/?id=139287#.UqhnJP...

You can get a sense of the various #sextech startups who demo-ed in 'Sex Tech Shark Tank' here :)

http://seen.co/event/social-media-week:-sextech-new-york-cit...

We welcome as many people as possible to join us in disrupting sex and porn - for anyone interested, this is my talk on 'The Future Of Porn' at SXSW last year:

http://www.sxsw.com/interactive/news/2013/cindy-gallop-celeb...

and I spell out the business opportunity in my open letter to David Cameron and Silicon Valley published by Wired last year - 'Don't Block Porn, Disrupt It':

http://www.wired.co.uk/news/archive/2013-08/14/cindy-gallop-...

One day I want to start the YCombinator for porn - who's in? :)

http://venturebeat.com/2013/03/15/makelovenotporn-founder-wa...

6
cassgames 2 days ago 1 reply      
My problem with modern porn as an industry is the low production values. Even big (ish) budget movies suffer from bad acting and ridiculous plots. Adult games only exist as a hobbyist past-time--they are few and far between and you have to be really "hard core" to be able to enjoy them.

So, I'm trying to solve the problem by creating adult games that have realistic plots. My goal is to try and create a niche and prove that adult games can be a profitable business, so that big players take interest and we see some major adult titles that are rated "A" not because of the gore and violence in them, but for the erotica/porn content.

Since I'm only one person, I have to start small, with sub-genres where it is possible for one person to make something worthwhile in a reasonable amount of time--currently it's illustrated interactive fiction. So far I've released one game that is more of a demo than a full featured game. I'm currently working on my second game which is much bigger.

7
RevelBody 1 day ago 0 replies      
Great stream of comments, I figured I would weigh in with our experience.

I founded Revel Body (www.revelbody.com) with the goal of using our new vibration motors to build better vibrators. We have been working on increasing the sensation and versatility of our products (more power and a broader range of vibrations than existing products) and removing the drawbacks of noise, reliability, numbness, etc. Right now we build and sell the most powerful, quiet and reliable battery-powered vibrator on the market. It is strong enough for muscle massage and can do things like create underwater suction and vibration (using the backside).

Unlike a lot of brands in the 'sex toy' world, our branding and design aesthetic are purposely designed to be clean, healthy and accessible. We focus on health and wellness as a way to enable consumers to buy and try our product. We want to remove barriers from people trying our products. We believe that the industry could double in size if people we not embarrassed to buy these products, so we are focusing on enabling that. We need to remove stigma, give people permission, etc. Focusing on the many almost endless medical benefits of regular orgasm is our focus right now.

These products are about as intimate a product as anyone can use, but they tend to be called 'sex toys'. This does not do justice to some of the better products our there, but probably is good for cheaper/mass market items. Toys are cheap and do not do anything important, and these are not just for sex in the traditional sense. Some brands are starting to use 'pleasure product', but we are looking for a new name for a high quality category of products like we build. Personal Appliance is too bulky. I would love if someone could put together a new for this category of product which really captures what these products can do.

We launched on Indiegogo, because the biggest crowd funding site would not allow 'sexual' related products. We blew past our goals nicely, but do not think kickstarter will come around and allow other sexual related products.

Unlike other sexual products, we have had good success at raising equity capital. We have done three small rounds which closed very fast and we ended up leaving many investors on the outside. I think our experience was different because we had a technology disruption story that made sense as well as being able to point out the many ways in which the industry is mainstreaming and growing rapidly. These points create a path for a company that can disrupt and industry as well as lead the charge to make it mainstream, which will lead to a great exit when a big consumer product is looking to enter this industry (they will want the best brand and technology). Other companies like Crave (raised $2.4M to angels), and Pipedream and Peekay show that mainstream PE money is entering this space.

There are ways to position companies for investment if you understand how investors view these kinds of investments; they are looking for an exit based return and to be part of something cool. Think of what kind of company would be bought (build versus buy decision). On being part of a cool startup, I think it is difficult to imagine better cocktail party talk than being part of a disruptive vibrator company. Companies in this space will probably do better with angel investors than with VCs, many VCs are funded by institutional funds which limit investment into 'morally questionable' activities (think fun stuff like sex, drugs, tobacco, rock and roll).

Like other sexual start-ups, we have had a lot of issues with other companies not wanting to do business with us because our sexual nature or association/proximity to porn start-ups. This includes banks, merchant accounts, advertisers (Facebook included), retargeting ads, etc. It is ridiculous but if you plan for it, you can work around it.

Lots of interesting things going on here...

8
unoti 2 days ago 2 replies      
I'd love to make XXX videogames. There aren't many serious players in that space, and I'd love to go after it. I can't do it alone, though, I need artists and a couple other capabilities besides software development. When I pitch the idea to people I'd like to work with on this, they don't want to participate in that space. So yes, there's definitely a stigma for a lot of people.

I've done a good amount of sex things in different venues ranging from phone sex systems to phone dating systems to sex robots in Second Life, so I've long ago lost my aversion to such things. But it surprised me how many people seem to be scared of participating in the industry.

It's easier to make high quality content now than ever before, and it's only going to get better from here.

9
kingkawn 2 days ago 1 reply      
Porn sites are janky, unpolished, often half-broken, and prone to suddenly disappearing as quickly as they appeared.

This is what innovation looks like.

I think they are the definition of innovation in online content delivery of any kind. Live video streams, monetizing content, creating minor internet celebrities who can live off of their online work, confronting head-on issues of privacy and censorship. All of these things and more came far earlier in internet porn than anywhere else, and theres a good chance that whatever edge they're struggling with will be where the rest of tech finds itself shortly thereafter.

It's like graffiti in the subway as a precursor to ads for HSBC. It may be grimy, but they have nothing to lose so there's a good chance what they're doing is a brilliant move.

10
durkie 2 days ago 2 replies      
We're in the process of launching our first product at Comingle(http://www.comingle.io), making Arduino-based, open source and hackable sex toys.

We're making a sex toy platform (our library is named OSSex of course) so that it won't matter if your sex toy is made by guys. You can reprogram it to your liking, attach sensors that respond to your feedback or even build your own.

It is super hard to find a payment processor, but I imagine that their hands are tied by the card networks. I bet Stripe would love to support adult payments if they could: lots of adult specific processors charge like 14%. Seems like that'd be some nice action to be a part of, even if only in the adult industries that are lower risk (the adult industry is huge and there's no way some dildo shop is as high risk as a cam site, even though every one treats them the same.)

11
shittyanalogy 2 days ago 2 replies      
What are you looking for, innovative content delivery, production style, search technology, payment schemes?

What problems for example?

All the main video sites you go to are startups that are trying to innovate and make money. Porn is a very competitive industry. Pornhub and redtube for example are innovative startups it's just hard to amit it to ourselves because they are peddling smut.

12
jenmcewen 1 day ago 0 replies      
Oh man, you've just opened the floodgates. I just love to geek out on this topic. :)

I've been in the adult industry for almost a decade- both in "hardware" (sex toys) and software (mobile app store, video streaming). What sort of innovations are you looking for? Content, social, tech?

A sex toy company I find innovative is Revel Body. Most vibrators use a rotary motor that spins an off-kilter weight to create the vibration. Revel Body developed their own patented linear motor that uses magnetic fields of alternating polarity to slide a weight back and forth in a linear motion. It's super quiet, more powerful and last longer than the older motors. They also designed their own chip to give the user precise control of the frequency and speed. I would have loved to have used RB's motor in the toys I designed.

Lovepalz has the Zeus and Hera toys that couple hardware with software for long distance partners. Minna toys have pressure sensitive control panels.

The folks at Utherverse created an immersive adults-only virtual world. I believe they launched a major overhaul to their platform last month. They've also built a VR compatible platform specifically for the Oculus Rift universe. In terms of VR porn, Utherverse is at the forefront.

For software, I think we tend to look at consumer-facing sites and products, but there's a wealth of tech innovation happening behind the scenes. SendFaster, while not an adult company (but a tech co that powers a number of adult sites, mine included) has amazing TCP acceleration and image compression software.

While not a startup, Streamates developed their own live streaming technology that's used by millions of visitors daily.

Speaking of my company, I co-founded the MiKandi Adult App Store. We launched almost 5 years ago as the first adults only app store, before Android really hit it big. Being early adopters of Android and one of the few third party Android app stores at the time, we really dove head first into it. Under our belt today, we've got app distribution, mobile video streaming, in-app billing, notifications, DRM and content management, and soon-to-launch an ebook reader, mobile game creator, and comic reader and creator. We've tried to push other tech forward but are usually shot down soon after launching them- our Google Glass adult app, Tits & Glass, and our third party Chrome app store, MiKandi Mint.

As far as the problem we're trying to solve, it's less about a problem in the adult industry as much as it's a problem in the mainstream tech and banking industries, which is being discussed a lot here. I wrote about the hostile business world here: http://modelviewculture.com/pieces/sextech-startups-in-a-hos...

13
MrJagil 2 days ago 1 reply      
http://www.pornmd.com/ is a very interesting site.

For one, it scrapes all the top sites.

For another, you can see what people search for in which region. I.e. I am in Denmark and danish people apparently wants to see danish porn. I wasn't aware of that.

For a third, they have a live-search which is quite interesting. (and amusingly, read aloud by porn actors here: http://www.pornhub.com/view_video.php?viewkey=1025156889)

For a fourth, they also have a chrome extension, which if nothing else is curious as the adult industry has so far shied away from apps and such (I believe because of regulations).

Another interesting take is http://www.porniq.comThe site speaks for itself.

14
dematio 1 day ago 0 replies      
The adult industry isn't lack of innovation, it has pushed the wide implementations of VHS, Online payment, Virtual Reality, teledildonic, etc.

The much needed disruption is how to bring positive impacts to the mainstream market by using sex technologies, without leaving the sex element. How to use sex technologies to help couples to stay intimate, increase safe sex awareness, help individuals to understand his/her sexuality, sexual wellness, help men to understand female orgasm (no, it's not about bigger dick), etc.

In the recent years, we started to see sex-positive startups stepped up to this challenge. From MakeLoveNotPorn, Jimmy Jane, Crave, RevelBody, HappyPlaytime, PerfectFit, DOWN (Bang With Friends) and many more.I'm the co-founder of www.vibease.com, the world's first wearable smart vibrator. I created Vibease because I was in a long distance relationship and I couldn't find any solutions that was easy to use and not invasive. Eventually we 'pivoted' to create immersive pleasure experience for women using audio erotica.

Cindy Gallop from www.makelovenotporn.com has been a great advocate to disrupt the old adult industry. She successfully brings the hard topic, porn to be discussed in the society. She takes the good parts of porn and leaves the bad ones behind, to encourage a healthy discussion about sex.

The challenge is that these startups always being treated like the old shady sex business, especially from the mainstream and holy (aka. hypocrite) institutions. The best way to overcome this problem is to pitch it boldly and hide nothing.

15
benjora 1 day ago 0 replies      
Hey! We have a company called http://Enjora.com, which tries to give a whole new way of watching porn, and separate itself from the malicious and low-end porn tube sites by giving credit not just the actors and producers, but provide the users full-length adult movies.Enjora.com is a streaming service, like Netflix, where you can watch high quality porn videos from multiple productions companies for a low monthly fee. Although we are still in the development process, we already contacted a lot of producers, who realised that its win-win-win situation because the users get their movies in HD, without annoying ads, on a well designed easy to use website. You can follow channels, porn-stars, and multiple fetishes.Apart of the search engine, we are planning integrated payment methods like mobile, crypto-currencies, and Paypal which makes easier - and more trustable - to pay for our service.
16
snug 2 days ago 0 replies      
My girlfriends company, https://zivity.com is testing out some waters on a few things. Zivity has been around for awhile, where you pay for votes and you vote on your favorite sets, and pays out pretty well to their artist. Right now they are testing a sexy crowdfunding site, where you vote for which theme you want to win. Live Preview/Beta (https://fund.okidokiokami.com/)
17
byoung2 2 days ago 0 replies      
There was an interesting discussion about technology stacks in porn here: https://news.ycombinator.com/item?id=6137087
18
vextape 1 day ago 0 replies      
I'm someone making porn but trying my hardest to fund it without making it a business. It became important to create a model that wasn't reliant on profit. I try to treat it as a co-op.

Often it feels like the issue with the industry is that it's so uncertain financially that it's too scared to make content for anyone other than the assumed stereotype porn consumer (straight dudes mainly) so there's over saturation of very similar, repetative content which breeds a strange, one-upmanship quest for never ending novelty.

The ease of access to consistently good and cheaper video equipment (dslrs that support video etc) mean that the people making the most interesting work exist outside of the industry, uploading onto tumblr or sites like clips4sale. Basically they're Etsy of porn, allowing independence from selling the rights to your work to big companies. They take a bit of searching but they're like gold dust when you find them.

our work is: http://afourchamberedheart.com http://fourchambers.tumblr.com

19
frequentflyeru 2 days ago 1 reply      
It just surprises me that mainstream brands haven't embraced advertising on porn sites. There is no reason why there couldn't be a Hulu style high end porn site with real ads from like Budweiser, Old Spice, Mountain Dew, Red Bull, Comedy Central. There might be backlash for the first company to advertise but after that I can't imagine people would care.
20
brettz 2 days ago 1 reply      
We do pretty innovative and fun things at Pornhub. We're hiring too if you're interested.
21
throwawaycx 1 day ago 0 replies      
One thing I thought about was to have a reverse porn search(by using an image)See that reddit has an /r/tipofmypenis , where people are seeking the porn they once saw, or they have a picture of it.

It would be quite powerful if it work with publishers and has face recognition ability, so when people upload a screenshot, they can be directed to the porn video over at the publishers.

Also, it is strange how one cannot search by body type by specify a 3D model of the body... we can only use descriptive terms.

22
SilviaSerra 1 day ago 0 replies      
I think Erika Lust's Xconfessions.com is one of the better approaches to rethinking pornography I've seen so far. Using the publics own sex confessions, published on the site anonymously every day, Erika has established by far the most sophisticated and innovative crowdsourced erotic cinema ever seen. Each month, she picks two of the best submissions and turns them into beautiful, original and edgy adult short films.
23
manny5d 2 days ago 0 replies      
There was a talk at SXSW this year that was called the "Relieving Frustration The UX of Porn" that showed insights on how the Porn industry was innovating in UX design and showed how mainstream sites were following in its footsteps it was a good talk.

http://www.slideshare.net/SteveJohnson35/relieving-frustrati...

24
striking 2 days ago 0 replies      
http://faploid.com has been in beta a long time but it's gotten awards. Hopefully it works out soon.
25
staunch 2 days ago 2 replies      
VR porn is a new area with difficult problems to solve.
26
stared 2 days ago 0 replies      
It seems that porn business pushed technology for e-payments and data storage/transfer:

http://www.enterprisefeatures.com/2011/06/ten-indispensable-...

I have no idea if now they are frontiers of innovation.

27
k__ 2 days ago 0 replies      
I don't know if they are a startup but the page of chaturbate feels linke one.

Like the idea of shared cams where all people can see even if just a few pay. Also That the people on the cam can do their own thing.

Most innovative idea I've seen in That sector for long.

29
throw_away4778 2 days ago 0 replies      
Not really a start-up but a Django one-weekend project:

"isexdb is the biggest global directory of adult entertainment locations worldwide"

http://www.isexdb.com/

Programming mostly done by my buddy.

30
sysk 2 days ago 1 reply      
For your reference, http://www.gfy.com is the "HN" of the adult industry.
31
testhater 2 days ago 1 reply      
nope. everything is terrible.
32
pygeek 1 day ago 1 reply      
Glad someone asked, its just the thing we need to innovate!
33
detcader 2 days ago 1 reply      
34
resca79 2 days ago 1 reply      
I have not the competences to do something like that but in my opinion this is original hacking.In a small town of Sicily (near where I live) some guys are making incredible stuff with retro - computing.They have restore hold computers like PDP11, apple one with all original components.

http://museo.freaknet.org/en

18
MailChimp has blocked my newsletter. Help
4 points by darrenjsmith  1 day ago   16 comments top 6
1
patio11 1 day ago 1 reply      
Has anyone negotiated with Mail Chimp after having been blocked before?

Yes. They blocked Bingo Card Creator back in the day, because of concerns that it was gambling-related. I successfully appealed and convinced them that it was not, in fact, gambling-related.

I'd send them approximately what you just posted. Emphasize that you are from the clean, upstanding side of the Internet and, while you're aware that you happen to abut a hive of scum and villainy, explain that you are squeaky clean. Offer to stop referencing marital aids. If you have external indicia of credibility, I would reference them. ("As cited on 20/20." "Written by a PhD in human sexuality.", etc)

Ultimately, if you can convince a rep at MailChimp, you win. As an anti-spam researcher in a past life, I want to mention the possibility that you're going to lose, even if they trust your intentions. You're a negligible percentage of the email and business originating at a MailChimp IP. It is critically important to them that that IP and the email/business going through it does not get burned. Various automatic and manual processes do not consider your business to be of equal worth with other businesses, and your opinion on that being unfair will not change their mind.

Additionally, and this is just a "facts about the world" thing rather than meant to discourage you as someone making things: "I collate links from across the web" is, virtually everywhere, not seen as a high value-added activity. That goes for MailChimp, for Google, and for virtually anyone else you want to convince to like you. It pattern-matches with "content scraper." I would strongly consider investing in quality first-party "content" which you could thicken with curated links rather than relying on the curated links being the whole of the offering. You've already got two and a half strikes against you due to the nature of the business.

2
darrenjsmith 1 day ago 1 reply      
-----Draft Email I am Crafting in Reply-----

Hey MailChimper's!

Thanks for the clear communication in the MailChimp Compliance email I have received. The ability to send email from my account has been blocked. I regretfully understand as to why my account has been blocked thus far. Having said that, I have a few questions.

Pillow Talk provide a weekly collection of links from across the web to educate couples on how to have a better sex life. The majority of links I include are from legitimate blogs, Reddit, YouTube, IMDB and Amazon.

Were not a scammers or spammers and every recipient has has to double opt in to receiving this email. I appreciate that your abuse prevention system Omnivore, has highlighted content, keywords or activity that 'indicate the possibility of harmful information being sent through your service and Id love to understand exactly what were doing that is inappropriate?

I was attempting to send issue 8 of Pillow Talk last Friday 17th October. I have used Mail Chimp for 7 weeks without any problems. Why now? What exactly has caused Omnivore to highlight us?

Our email is clearly about sex, but were not sending thousands of emails selling viagra pills or pornography! I understand why your ToS has been written the way it is, but I cant imagine it's for small educational mailing lists like ours. I feel we have been bucketed with all the bad guys, but clearly were trying to educate, not spam!

In the last issue, I did include a link to a porn site for an educational how-to video. Im very happy not linking to porn sites if this is the issue? Please could you confirm?

Its a really unfortunate kick in the teeth. Im at the beginning of building a sexual education platform for the 21st century and already hitting institutional roadblocks and rules which are there to stop the scammers and spammers, not legitimate businesses trying to educate couples!

I please, please, kindly ask you to review your decision. I know you dont have to at all! But, for everyone suffering from boring sex in the long term relationships, or for all the sexless marriages out there, this is a huge problem for millions. We need to get better at talking and learning about sex and at the moment the scammers, spammers and porn industry are winning because theyre making it difficult for anyone legitimate to make things better! Can you be part of helping stop that, please?

3
jenmcewen 16 hours ago 1 reply      
Oh man. Just from looking at the title, I had a feeling your might be in the adult space. The same happened to me. We were using Mailchimp to send technical newsletters to our registered developers.

I did try speaking with someone at Mailchimp to plead our case. Unfortunately it didn't work. You might have some luck though because you're more in the health & wellness area of the industry, whereas I own an adult app store, so I'm 100% in the "porn" side of it.

There are some adult friendly newsletter services out there, but they're usually very costly. I think I saw one a few years back that was $150 a month. We've been using Amazon SES to send verification emails for new registrations, so we opted for SES for our monthly dev newsletter, neither of which have any porn or adult content in them whatsoever.

4
darrenjsmith 1 day ago 3 replies      
-----Message From MailChimp-----

Hello Darren,

As a bulk delivery service, a huge part of our job is providing greatdeliverability for all our customers. ISPs and spam filters arebecoming more sensitive to certain types of keywords and content.

Keeping this in mind, MailChimp is not able to serve as your emailprovider, because the content associated with your industry conflictswith our acceptable use policy. For direct questions regarding ouracceptable use policy and the types of content that arent supported,please visit our Acceptable Use policy under Prohibited Content:http://mailchimp.com/legal/acceptable_use

Nothing personal against your content or industry; there are just somevery strict spam filters and ISP rules that we have to comply with tomaintain the best possible sending environment. These filters arebecoming increasingly sensitive to certain keywords because someindustries tend to generate greater than average complaint rates(legit or not) with their emails. A risk that we unfortunately cannottake.

We appreciate your understanding in this matter.

The account is open so that you may log in anytime to back up data. Ifyou have any questions related to billing, please contactbilling@mailchimp.com.

All the best,

The MailChimp Compliance Team

5
cyberpanther 1 day ago 1 reply      
In my experience MailChimp customer service is hard to deal with and they don't really try to work with you even when you have a legitimate claim like you have. Also MailChimp will not give you any specific information about why you were shutdown other than just generic information.

I would suggestion just switching to another service. I've had better experience with https://mailgun.com/ because they will try to work with you more. They also have more options so if your industry is high risk, you can use your own IP addresses but still get the MailGun service.

6
jordsmi 1 day ago 1 reply      
I've had nothing but bad experiences with mailchimp.

Switch over to aweber, getresponse, etc.

19
How are you using three js?
4 points by shaaaaawn  4 days ago   1 comment top
1
trevordev 14 hours ago 0 replies      
20
Ask HN: Programming war stories?
4 points by bestnoodles  1 day ago   2 comments top
1
cledet 16 hours ago 1 reply      
I recommend checking out book Coders at Work[1].

[1]: http://www.codersatwork.com

21
Ask HN: My VPS got hacked and now I'm facing a massive bill. What can I do?
109 points by Koekoeksklok  2 days ago   76 comments top 24
1
patio11 2 days ago 3 replies      
Incidentally, since many HNers probably come at this from a mental model of "Anything which appears on an invoice is non-negotiable and simply must be paid": a B2B service provider which collects payment after services are rendered is knowingly taking on credit risk and has already priced non-collectability of some accounts into their services. You may be overestimating how much drama is required for someone at their company to say "Wow, really? OK, sorry about that. I'll write it off."

This is one of many, many, many reasons why we don't generally do cost-based pricing and, when we do do cost-based pricing, the markup is absolutely phenomenal. It has to include risk premiums. As long as it do include risk premiums, you don't have to sweat the small stuff like e.g. an uncollectable $4k invoice. (n.b. Small stuff! $4k hiccups are utterly routine events and largely dealt with by processes rather than by treating them as sudden emergencies, even if they feel like that to natural humans.)

2
Blahah 2 days ago 4 replies      
1. Report the incident to the police. Right now.

2. Report it to the VPS provider. Explain that you've reported it to the police. Ask for their cooperation in investigating the problem.

You do not have to pay. If they try to force you to pay, depending on your country, you'll probably end up in small claims court where you'll find judges are very reasonable people who usually side with the little guy. (IANAL)

3
BukhariH 2 days ago 4 replies      
I've been in the exact same situation with AWS ( http://cl.ly/SHOu ).

It was a nerve recking couple of days but I contacted AWS support and they were extremely good. They helped me secure my machine and then cancelled the 1.4K payment they were going to take from my account.

In all the whole process took 2.5 weeks and I only had to pay $15 for the I/O requests.

The best thing I can recommend is to talk to your host and tell them honestly you can't pay that much and you weren't the cause of the charges either.

4
thewhk 2 days ago 1 reply      
I work for a VPS provider in the US. These situations are common and we usually just issue a credit and give a reminder to the customer to please secure their server

That brings me to my point. How did the hack occur? When you get a VPS you are fully responsible for what goes on in there. It is your responsibility to secure it and keep it updated. It's not the provider's fault you did not apply the latest security updates. It's not the provider's fault your Java application was using outdated and vulnerable libraries nor is it their fault you didn't set a CAPTCHA in front of your submission forms. Either hire a competent sysadmin if you can't take care of that yourself or find a provider that offeres managed hosting instead of a VPS, as that's what you'd most likely need.

There are some cases where it's the provider's fault such as the Linode BitCoin hack a few years back but mostly it's just poor server maintenance

5
theonemind 2 days ago 0 replies      
I work for a company that provides VPSes. In a situation like this, they can see the usage is aberrant and they can see it's not normal based on past bills. They'd likely offer a large credit if you say you didn't intend to do this, and it doesn't look like a fraudulent account. That being said, they themselves probably have bandwidth costs, and are not at all likely to forget all of the charge, perhaps half at best.
6
onestone 2 days ago 1 reply      
Stop using providers which charge a ridiculous price for bandwidth (like AWS). There are many excellent alternatives where a TB costs only a few dollars/euros.
7
ColinCera 2 days ago 1 reply      
Have you talked to your VPS provider? They should be able to cut you a break; after all, that 40TB of traffic cost them only a small fraction of what they're charging you, so if they're reasonable you should at least be able to get them to reduce the charges to their actual cost.

You might also offer to suggest writing up a post mortem for them, that they can provide to their customers as a lesson/tutorial on how to protect a VPS.

Finally, you can suggest that they might want to implement (and perhaps help them implement it) some kind of warning system, i.e., if a VPS suddenly begins using exorbitant amounts of bandwidth, and far more bandwidth than it ever has before, they really should email/text the owner an alert within 24 hours not let it go on for 6 weeks. I'm surprised that they don't cap/throttle the bandwidth once you go over your plan's limit, to go along with sending you alerts. It borders on negligence on their part that they don't already have such a system in place.

8
patio11 2 days ago 0 replies      
I would begin by contacting your VPS provider, explaining the circumstances which caused the bill, and asking "What are our options?"
9
Jare 2 days ago 0 replies      
Depends on your provider. Amazon AWS is known to have waived such bills in the past, see for example http://readwrite.com/2014/04/15/amazon-web-services-hack-bit...
10
matthewarkin 1 day ago 0 replies      
I had the same thing happen to me. I wrote about it on my blog http://mattarkin.com/protect-your-azure-linux-vm-aka-how-to-.... Basically I complained to Microsoft, they said they'd waive the charge but since it was for a linux vm they said they couldn't cover it. Then I complained to American Express claiming it was an unauthorized and fraudulent charge. Amex sent the dispute to Microsoft and they never responded so I wont the chargeback.
11
zhovner 2 days ago 2 replies      
To prevent such incidents Linode have alerts of traffic/cpu/disk thresholds. For example you can configure notification if your bandwidth utilization more than N Mbit/s in duration more than N minutes. Very useful for DDoS prevention.
12
dangoldin 2 days ago 0 replies      
I had something similar happen with AWS but the bill wasn't as high since they ended up flagging my box as spam-producing and shut off all outbound traffic. I'd just ask them and see if they can remove the charges, it worked in my case.
13
minopret 2 days ago 0 replies      
I can understand how that could happen and what a problem it would be. I had an experience with a telephone bill myself, but the story is not going to help you.

I would suppose your first and best resort is to consult your lawyer, advocate, solicitor, barrister, Anwalt. I wonder what your relevant legal jurisdiction is.

I wonder whether it would help if you can account for your own whereabouts and your own usage of endpoint data services. I wonder if your method of payment to your VPS provider is mediated by a financial service that can help you dispute the bill.

I am not a lawyer.

14
jnardiello 2 days ago 0 replies      
I assume you are in europe. I'd suggest simply talking with your provider, explaining the issue and asking them to investigate. I honestly expect them to cooperate and be understanding.

If they insist for you to pay: simply don't. State the truth: You can't afford it. Tell them the only way they will see this money is by taking legal action against you and even in that case you won't be able to comply - as you don't have the money.

Hope it helps :(

15
tdicola 2 days ago 2 replies      
Anyone have tips on how to secure their Linux VPS? I just set one up and disabled SSH password login, locked down all the ports with iptables (using ufw), and enabled fail2ban. Anything else I should install or configure to make myself a little more secure? Was considering tripwire but I dunno how much a headache it would be with false positives as I change things on the server.
16
joshmn 1 day ago 0 replies      
Post on WebHostingTalk.com - just do it. You'll get attention from the host, other hosts who will sympathize, and you'll see that they'll just write it off.

Post the link when you do and I'll be sure to comment on it (I'm somewhat very-active at WHT)

17
applecore 2 days ago 0 replies      
PSA: Set up billing alerts! You should always have a notification sent to you when your monthly bill exceeds one or more dollar amounts. For example, if you're using AWS, Amazon CloudWatch lets you set an alarm on a billing metric to notify you automatically.
18
decisiveness 1 day ago 0 replies      
I seem to be missing something. You knew it was happening when you got the first bill, but let it continue for another half month before shutting it down?
19
logn 2 days ago 0 replies      
In addition to the other comments, make it absolutely clear to them (with proof if needed) that you're a student.
20
gregcmartin 2 days ago 0 replies      
Make sure Elastic Search is not accessible from a public IP address (this is what likely got you in the mess to begin)
21
general_failure 2 days ago 0 replies      
Do you know how you got hacked?
22
freshflowers 2 days ago 0 replies      
Just in addition to some other helpful comments: based on posting I assume that your are Dutch or Belgian, located in Europe and are buying this VPS as a private consumer, not a company.

Which means your case is probably covered by consumer protection rules when it comes to informing you about data usage, and I seriously doubt a VPS provider has covered their ass as well as mobile providers tend to do.

23
zack19 1 day ago 0 replies      
cut your credit card report it as stolen tell the host that it wasn't u :p
24
ishener 2 days ago 1 reply      
I feel really sorry for you situation. I first suggest talking to the hosting provider and explain what happened. Any decent service will give some discount in this case.

Unfortunately, I can't think of anything else. I wish it was realistic to tell you to go to the police.

Also, if you would give your email, I would definitely consider sending a donation through paypal... Hopefully other readers here will do the same.

22
Finding text in hidden/collapsed containers in a web page
2 points by residualmind  1 day ago   2 comments top
1
J_Darnley 1 day ago 1 reply      
Browsers should just stop recognizing "display: none" as a valid style attribute. "visibility: hidden" is another one.

If I had the skill to modify a browser this would be one of the first things to go.

As for your particular problem, if there is a clear space where some content should be, I resort to: right click -> Inspect Element with Firebug. I doubt there is a good way to reliably change styles across websites.

23
Ask HN: How to find a better job while being employed?
10 points by ishener  1 day ago   10 comments top 5
1
ColinWright 1 day ago 2 replies      
I'm one of four directors in a company with 25 employees. If one of my colleagues wanted to look for another job, I'd want to help them. That might be by making them happier in their current work, or it might be by helping them find another position in our company, or, as a last resort, helping them find a position they're happier with in another company.

Absolutely I'd want to keep them, but sometimes that's not possible. Even if they leave, I'd help them remain productive, plan their exit, and control the hand-over.

If finding another job is the path they'd take, I'd find a way to let people take calls and attend interviews. Obviously we'd discuss either longer hours to make up the time, or a reduction in pay, but we'd find a way to agree how it would work.

If you can't talk to your current boss, moving out is the best thing to do, but the least you can do it talk to them first and give them the chance to make things better, or help you transition to a job where you're happier.

2
loumf 6 hours ago 0 replies      
Not only is it possible, but it's utterly normal. As others have said, tell interviewers your constraints.

Hopefully, taking a vacation day (or half day) isn't impossible at your current job. Having appointments in the middle of the day isn't unusual. Make sure all phone calls are scheduled and step out to take them.

3
MalcolmDiggs 1 day ago 0 replies      
You'd be surprised how accommodating a potential-employer can be. Just be truthful: "I can't interview 9-5 because I have a job." If anything, that will make you more attractive. If they're eager to fill the position they'll work with you; keep in mind you're probably not the only candidate who has a job already, so it's likely that they're planning to conduct some interviews during off-hours/weekends anyway.
4
dkarapetyan 1 day ago 1 reply      
Why don't you just tell your employer you are looking for another job? Is your fear that they would fire you on the spot? In my experience that is an unfounded fear and most employers want to know the reasons that led you to looking for a another job to begin with so that they can work with you to fix any issues that led to your decision to look for work elsewhere.
5
munimkazia 1 day ago 0 replies      
Most interviewers/companies understand that you work during usual work hours. That said, you should be able to step out for 15 minutes to take a call during work. If you get questioned about it, just tell them that it was an important personal call. And you could try to schedule these calls around lunch or your usual afternoon break time.

You can always schedule job interviews on Saturdays. Again, most interviewers understand the circumstances and usually do hiring on Saturdays to accommodate those who are working.

24
Ask HN: How are you suppose to find a job?
13 points by yuashizuki  1 day ago   17 comments top 11
1
greenpizza13 1 day ago 0 replies      
So, this isn't meant to be mean... but first you could work on your English.

"I have no network, what do u mean widen ur search criteria, like doing a barista job, which I already have" is full of spelling and grammar issues. If you want to work in tech I would expect it to be possible for people to look up things you write online. Take the extra time and spell out words like "you" and "your."

Also, it's "supposed to get a job," but that one is less obvious.

But to help answer your question for real, I recommend internships (hopefully paid) and agree with agilebyte, who mentioned looking for the jobs that don't require the 5 to 10 years of experience to start. Practice hard at interview-type questions and really make sure you know about the stuff you might be working with. There's lots of great starting jobs in tech that require less experience. Start there and get the 5 to 10 years, or be so good that you can knock 'em dead in an interview.

2
JSeymourATL 3 hours ago 0 replies      
As a practical matter, job boards are passive way to find a job. Here's a solid pro-active resource to give you ideas on a job search, http://www.amazon.com/What-Color-Your-Parachute-2014/dp/1607...
3
MalcolmDiggs 1 day ago 0 replies      
The first few jobs are the hardest to get, I would recommend that you focus extremely narrowly on a few companies you want to work for, and then do whatever it takes to blow your potential-bosses' mind.

Case in point: My first job was a typical development role at a startup. I got the gig by going the extra mile. I took the product-idea they were working on (which they had described in detail in the hiring ad) and then built a working prototype from scratch (designed it, coded it, launched it, and sent them a link to the website and a zip file with the code).

Would I do that for a job today? No, probably not. But when I was starting out, going the extra mile was the only way to get my foot in the door, and it worked.

Work-history is just a way for hiring managers to know you can get the job done. If you're just starting out (and have no experience for them to review) you must figure out a way to prove to them that you can perform well.

Hope that helps.

4
staunch 1 day ago 0 replies      
If you can actually do the work described in the job post, most companies will hire you. Your hit ratio is meaningless. You only need to find one good job.
5
powatom 1 day ago 0 replies      
You do what everybody else does, and keep trying. What kind of work are you looking for? In my industry (software development), it'd be incredibly rare to have a job interview without some kind of technical component / test. If you can demonstrate via your CV and application that you've got the goods, then hopefully you'll get an interview and the whole experience thing won't matter so much.

Basically just tailor your CV to highlight what you've got to offer, and then just keep applying. If you're a good fit for the role and can demonstrate that, then few places are likely to hold hard and fast to the experience rule. Experience is only a general 'easy' way of assessing somebody's suitability, but there are enough terrible employees with decades of experience under their belts to prove that it's not a guarantee of quality.

6
mooreds 1 day ago 1 reply      
"A job" covers a lot of ground. What kind of job are your trying to find? Getting hired as a lawyer requires different tactics than getting hired as a software developer which is different in turn from a real estate agent.

If all of the offers available online require 5-10 years of experience, perhaps you should widen your search criteria? Or look for local jobs? What meetups, if any, are available, for networking? Have you asked your network for help--not to find a job, but to introduce you to people who are in the industry that you are interested in?

7
agilebyte 1 day ago 1 reply      
Almost all does not mean all. You are going to work in only one job right? That job gives you more experience, more experience to apply for jobs that require 5-10 years of experience down the line.

If you believe you have more expertise than meets the eye, you could give freelancing a try.

8
CmonDev 1 day ago 0 replies      
On the lower-paid side of the outsourcing: they can easily hire a junior and sell him as a senior. You would probably have to travel though.
9
zubairq 1 day ago 0 replies      
Contact me at zq@nemcv.com. If we can't find you a job we pay you $1000
10
knicholes 1 day ago 0 replies      
Internships are a great way to get work experience.
11
hashtag 1 day ago 0 replies      
Network
25
Ask HN: What makes a good OSS community?
5 points by drygh  1 day ago   1 comment top
1
sarciszewski 1 day ago 0 replies      
In a word: Humility.

The maintainers of LogStash, for example, have a philosophy that "If our users are confused, it is a bug. It is not that they are stupid."

Another good example is PHPUnit, whose maintainer unarguably has a much higher prestige in the PHP developer community than I do, yet responded to trolling by implementing the change I suggested and taking the time to hash and PGP sign all of the past releases.

https://github.com/sebastianbergmann/phpunit/issues/1334

The CodeIgniter maintainers responded to my gripes about their CI_Encrypt library by researching and writing a brand new library to fulfill that role.

And of course, we have some good bad examples.

OpenCart:

https://github.com/opencart/opencart/pull/1534

https://github.com/opencart/opencart/pull/1594

Mojolicious:

https://github.com/kraih/mojo/issues/656

Etcetera. Humble lead developers are less caustic and create less barriers for entry. This encourages people to contribute and allows a community to flourish.

26
Ask HN: Are my assumptions about the Great Firewall true?
4 points by westiseast  2 days ago   2 comments top 2
1
tbronchain 1 day ago 0 replies      
Hmm, not quite.

Here are my assumptions after spending time in China since almost 2 years now:1- Nope, it's not vindictive. If you can't access any other website after visiting a blocked site, you maybe have a problem with you network configuration (just an assumption).2- You cannot connect your VPN in a Starbucks because they block the ports/protocols that allows your VPN to work. Sometimes, it's also the reason why it's hard to connect to your VPN. It's also the reason why sometimes your connection may suddenly stop working (download speed drop to 0). My assumption on that is, if, randomly, they detect too much trafic through encrypted channel, they block it.3- No, if you're not using a Chinese browser, you're probably not infected by any "virus". Although, some says QQ may include some spyware in it. I don't know much on that.4- Your provider knows what you're looking at. Like any provider in the world. Because internet companies in China are owned by the government at more than 50%, then indirectly yes, the government potentially knows what you're doing.The truth is quite different. In reality, their system is pretty similar than prism (yes, really). When the "police" require some data, they ask the providers about the metadata. That's it. From what I've heard, they're much less organised than they seems. The real difference between Chinese gvt and others it that they don't hide doing it. Plus the censorship.5- "I assume that, somewhere on a government database [...]", hm, probably not.

I've heard GFW had several ways to "censor" the internet: DPI and DNS poisoning mostly. Also some "random control". Also, the GFW is this kind of system able to learn and adapt itself. Apparently, if too many people try to access a foreign website, it gets blocked. There is also some crawlers looking for keywords ... Not 100% sure, it can be only guesses.

About the "QoS downgrade" @auganov was talking about, once again it's a bit different. What really happens is that the providers have a limited bandwidth to go outside of China. Biggest providers (China Telecom/Unicom) have "a lot", others have really not much, but it's still pretty limited, and when many people are connecting together, we're back in the old days of "rush hours" and slow internet. In the middle of the night, I can easily reach 5MB/s (which is about 40Mbps), through VPN.

Hope I answered your questions :) Also, if anyone knows a bit more about GFW, I'd be glad to hear about it!

2
auganov 1 day ago 0 replies      
It somewhat matches my experience too. Generally I'd say there's 3 classes of blocking: total block (twitter, fb), rate limiting (google), and general QoS downgrade (which seems so random that it might just be the infrastructure being so bad). I really doubt any of that happens ad-hoc based on your usage profile. And yes I did notice that certain routes might not work on non China Telecom networks, but that again is probably just bad infrastructure. I always assume The Great Firewall is 80% market protectionism and 20% censorship (or rather irrational fear on the side of the govt). Wouldn't worry from a user's perspective.
27
My Kickstarter is going to end in failure today. What went wrong?
20 points by 54mf  4 days ago   27 comments top 16
1
vitovito 4 days ago 0 replies      
Hi, designer here, and also someone whose friends have done a bunch of Kickstarters, and have written about their experiences.

I see two core issues, and neither are readily fixable.

First, "I've received nothing but positive feedback on both the concept itself, and on the Kickstarter project, from individuals ranging from 20-something techie dudes to 60-something mothers of 5. Everyone loves it, in theory."

Second, "Finding backers has been like squeezing blood from a stone, even after nationwide exposure on the #1 morning show."

I'll take them in reverse order.

"Kickstarter is not a store," and Kickstarter means this two ways. As a consumer, there's a chance you won't get your product, or it won't be high-quality, or won't be what you expected, etc. But as a project starter, it also means there aren't roving bands of consumers looking for something to buy.

Common metrics for Kickstarter projects say that if you don't have a large enough social network to get you 25-33% of the way to your goal in the first 24-48 hours, you won't succeed. That's not a factor of money; you don't want one wealthy aunt to contribute $3,000. It's a factor of social reach. This is because most of your funders are people who know you, and their friends, and their friends, and their friends. You get bumps from strangers with media coverage and social networking, but that's not a primary means of finding backers. Expectant parents are not stopping by Kickstarter to shop for baby-tracking apps between Target and Baby R Us.

That means you needed $3k in expectant parent friends on day one, and you had $1200. Kickstarters aren't slow grinds to success, they're two big bumps: beginning and end. You have three reward tiers which don't require someone to actually be invested in your application, you didn't regularly post backer updates to keep engagement up, and you had no user comments for a month. You didn't have enough traction, because you didn't try to get enough traction before you started. Everything is marketing.

Sure, some of the lack of viral spread might be bad timing -- more babies are born in September than any other month, and once the baby's here, you're too busy to discover and use a new app. Maybe you need to be pitching this nine months ago, or again after the new year, to newly-pregnant parents.

Or, maybe everyone loves it in theory, but experienced parents know they would never, ever use it. And that's the first issue.

There's one sentence in the entire video + text description that describes a benefit for a parent in using your app. "You can use the data you collect to identify patterns in your infants life, useful for narrowing down the causes of sleep problems or watching for allergies or illness, and to track growth and development over time."

That's it. The rest of the video+text talks about the app itself, which doesn't tell me why I'd want to use it.

That tells me there isn't a use case for your app. You are one parent with one data point about how you raise your (first!) child. You emphasize personalization in the app because you don't know how other families work. Your experience is not universal, and neither is your desire to collect data.

There are baby tracking notebooks (the paper kind), and there are sites like Trixie Tracker, and they have very niche audiences, because people have been raising babies without apps for thousands of years. A parent has enough to do without figuring out correlations in data on their own from the data they laboriously log in your application.

If you don't basically live on sites like Trixie Tracker, talking with their users, discussing the shortfalls of it and related apps, how can your app be any better? How can it provide real value?

If you're not literally living with other new parents and collecting data for them, so you can figure out the correlations and provide advice to them, and see if the advice works, how can you be sure your app will provide enough actionable information once people start logging data in it?

This is an app you're building for yourself, not for other parents with newborns, and you don't know enough people who want to support you financially in doing that.

If I was hired tomorrow to fix this app, the first thing I'd do is a literature review of common problems new parents face, and common questions and concerns, and common patterns of sleep and sickness, etc., etc. The thing new parents want the most is reassurance everything is normal and okay. You could probably draft a new version of the app to start testing just from existing literature, instead of your own experience.

Then I'd make you decide if your market is obsessive-compulsive data nerd parents, the kind who already use trackers, or if you're trying to make something for a general audience.

For data nerd parents, I would then camp out on every baby-tracking stats site and app, and start spending days and weeks living with new parents, to figure out not just how to log data most effectively, but also, what are the things they're not getting out of their current trackers and why? And how do those things change as their experience as parents changes (second kid tracks different things than first kid) and as the kids age (older kids track different things than younger kids).

A general audience includes Android phones, and doesn't pay for apps, for starters. But a general audience also wants more immediately actionable data, "I have a specific problem, I want to put a bunch of data in, and I want the app to tell me what to do about it." That's a different app from what you've got going on right now.

The net effect of doing all that real-world legwork means when you're ready to restart your Kickstarter (in 18 months), you'll hit your 25-33% goal in 24-48 hours, because you have enough of a network of invested users now.

2
smt88 4 days ago 1 reply      
Seems like it just means it's not solving an urgent-enough pain point.

Marketing consumer apps is REALLY hard. I can't possibly overstate that. It's expensive as hell and requires a lot of hustle on your part.

The reason it's so hard is that consumers don't want to download apps and rarely do. So asking consumers to just download and try your app is hard enough, but you're actually asking them to pay for it ahead a time. That's a tall order.

I'll also give you some more honest feedback than others seem to have been. It's a great design and idea, but it's almost impossible to get people to create a new habit.

If people weren't already tracking their baby's every move, they're not going to start doing it now unless the benefit is really, really clear.

A good example is fitness/calorie tracking. That's something that a pretty large percentage of people bounce off of, and the reward is feeling better, living longer, and looking better. That's a pretty big reward, and it's still not an easy thing to get people to do. (Though I should note that people have actually been doing that activity for a long time.)

So this is a really steep hill for you to climb, and it may not be monetizable in the end. That's ok, though, because you're done a fantastic job so far and will always be able to point to this product to show that you can execute. That's really valuable for the rest of your career.

My suggestion, which a VC gave me years ago, is to choose metrics for success (number active users, dollars made, etc.) and choose a target date. If you don't hit a goal for those metrics by that date, walk away from the project. If you don't have a concrete way to cut yourself off, you'll allow hope to string you along forever. Trust me, I've been there more than once!

3
ismail 12 hours ago 0 replies      
@smt88 "Seems like it just means it's not solving an urgent-enough pain point."

I think this is your issue, and you are targeting the wrong market.

As i parent i have personally tried a few baby tracking apps. Good in theory, but not really solving a problem (IMHO)

While your app may have a better UI and be simpler than others out there, i think these class of apps all suffer from:

* You have to remember to enter in the information, open the app and capture it. With a newborn, who is quite demanding , having to nurse every 2-3 hours, sleep deprived etc. Just seems to be a bit more work than needed* What use or benefit do i get from the data? So i can monitor trends? Why?* Monitoring trends is easy for parents, especially when they are doing are caring for the kid themselves. My wife is at home.,She knows when my son is not nursing enough, or she knows when he has not pooed or has not had enough wet nappies.

You are currently marketing this at "Parents" in general, maybe if you target it Parents who have their kids in Daycare (i.e Remotely keep track of whats going on with your kids) it would be an easier sell.

I know i would want this data if my kids were in daycare.

4
ebrewste 3 days ago 0 replies      
Some critical feedback -- I have a baby coming in March and I collect data and do analytics professionally, so I should be your target market.

In your video, I didn't see one concrete thing I get from collecting the data. The most depressing thing about committing to collecting data is finding out you can't make meaning from it. There are tons of reasons why that can be, but you didn't put my mind at ease. Collecting data is too much work to do with no assurance of payoff.

In addition, I have experienced Kickstarters that are over a year late (others have been on time). If I'm trying to track a newborn, I'm not gambling on a Kickstarter. It's fine for a trinket, not a time sensitive thing.

I really hope you find your success recipe, but these two problems are deadly to me.

5
DanBC 4 days ago 0 replies      
I don't understand what it does. Or I do undersrand what it does, I just don't understand why.

Being hyper-aware of everything happening with your infant adds stress but provides very little benefit. There are a few things people do need to track or at least be aware of: meconium; billirubin, vaccinations. Tracking temperatures when the child is ill.

If the app was linked to evidence based advice ("when should I call the doctor?"; "can my age X infant eat food Y?"; "what are the recommended sleeping temperatures") then I could understand it. But that would be a scary app to write because you're giving medical advice.

Why do I want to how many nappy changes my three-month old infant has had today?

Some people have weird ideas about forcing the infant into a routine - especially around sleeping. Tracking sleep patterns is probably going to raise anxiety around sleep, when what parents really need to know is to put the child down to sleep withput rocking it or cuddling it to sleep, and to respond to the infant when it cries. "Cry it out" techniques are abusive if they start before the child is six months old, and need to be done carefully if tried after then.

The only use I can think of for the app is specifically advised against in your faq:

> While Newbee is great for tracking daily events and statistics, it's not really meant to be used as a digital journal or scrapbook.

6
echolima 4 days ago 1 reply      
As the father of a 6 week old, I am curious about the app, but I'm not sure I would use it. Maybe the wife would. I'll put a link to your KS on my blog post today; which means nothing because I have 4 readers. Sorry. But maybe I'll get slashdotted :) (is that still a thing?)
7
firebones 2 days ago 0 replies      
Your target market is the intersection of quantified self adherents and new parents. So you're starting in a hole because I'm guessing that is small. From experience, the whirlwind of new parenthood is antithetical to feeding that quantified self need. (Recording--for sharing with relatives and others--is a notable exception.)

I get it--there are a lot of "first year diaries" that get sold as shower gifts but far more often than not remain untouched. My guess is that a lot of your positive feedback might come from these buyers--people who are buying this for someone else.

The premise might be to find some angle where the quantification can be done very passively (since it is really "quantified other") and put into a form suitable for years later when moms finally get around to scrapbooking the early years--when they finally have breathing room and are longing for the original new experience.

8
CmonDev 4 days ago 1 reply      
"I've received nothing but positive feedback..."

People are generally nice because it is considered polite.

9
mobiuscog 1 day ago 0 replies      
Not exactly a new parent here, but your app wouldn't have gained any traction in our houshold:

Looking after a newborn (and beyond) is often more than enough work on its own - the last thing you want to do is also record everything that's happening.

10
patmcc 3 days ago 0 replies      
Two things jumped out at me when I initially saw your kickstarter (prior to this HN post):

1) $16 for a year of app access is a lot. We could argue about whether that should be a lot or not, but in the current market it really is.

2) Timing is a bit difficult on this - with most Kickstarters, people are ok with getting it "whenever" - sometime in the medium-term future is fine for a widget or a computer game. For your app, I'd want it ready the day by kid is born - no sooner (if it's subscription) and no later (I'd miss some events). So it's a tough thing to back in advance. You say it would launch "later this year" - not helpful if I either have a newborn right now or aren't already expecting.

Edit: that said, it looks like a cool project, please continue with it. I fully expect to have a need for this app within 2 years, and would probably pay $10-$15 for a subscription.

11
Psylocyber 4 days ago 1 reply      
Mobile app kickstarters don't do well, because they aren't necessary.

Create the app on weekends and weeknights if you have a full-time job. Then release it and start making revenue.

Then, if you have ideas that need funding to improve the app, go for it.

Most people I talk to won't fund weekend project apps, no matter how good the concept seems. Get it out there and see how the market responds.

12
grantcox 4 days ago 0 replies      
I guess I just don't see why Newbee is so much better than existing baby trackers, that I want to invest in seeing it made. Yes the UI looks nice, but the actual features don't seem any better than the dozens of trackers that are already on app stores.

If this was an existing product on the app store, and was also just a few dollars, I may have bought Newbee because it looks prettier. But $16 for a chance to use a 1 year subscription (if it's ever made, and I have another child around the same time), of a product that doesn't seem to have any advantage other than "prettier"... I'll pass.

13
digitalcreate 4 days ago 0 replies      
Tracking information is only useful if it allows you to DO something with that information. A simple list of play and poop times doesn't do you much good. A more useful thing would be to give parents information about what's happening that will help them. Is that a normal amount of activity? How does it compare to other babies that are being tracked? Can you discuss this information through a social network to get feedback? What do experts recommend at this stage? Etc.
14
TenJack 4 days ago 0 replies      
Just some general video feedback, the music used in your video is too scattered for me. It seems like something more soothing and upbeat would be better.
15
skorecky 4 days ago 1 reply      
Why not try generating revenue from the app?
16
yuashizuki 1 day ago 1 reply      
man, not a lot of dood care about a babby, maybe thats y.
28
Ask HN: Going from Redis to MySQL. Good idea?
19 points by gary4gar  2 days ago   48 comments top 24
1
justinsb 2 days ago 0 replies      
Yes, I think it's a great idea.

First of all, 3 million rows a month is not that much from a database point of view - if evenly distributed (though I'm sure it's not), it would be about 1 per second. (It is impressive to me from a business point of view though). You don't need Redis's throughput, and you are hitting Redis's limits with respect to memory.

1) This is _exactly_ the use case which relational databases were built and optimized for (fixed schema, OLTP, presumably some analytic queries). You might want to normalize the data a little (e.g. the menu_items, employee_name, pos_type & pos_version), but you don't have to - though this would enable faster & richer querying.

On your schema changes: I bet you'll be much happier using a relational database which takes care of this stuff for you, then you will be implementing it yourself in Redis. You probably won't need partitioning either. If you do end up needing partitioning, I would guess your DB is "trivial" to partition by restaurant.

I suspect you'll also find that a relational database stores the data more efficiently, particularly if you normalize a few things. Your data will probably fit into RAM again, but a relational database can cope even when it doesn't.

2) Any relational database would be a great match for this, and would allow rich querying (e.g. by employee, by date, by restaurant). My personal bias is to prefer Postgres.

3) I don't see what Redis is getting you here. It doesn't support rich querying, is memory bound, and you don't need the throughput it promises.

2
thinkingkong 2 days ago 1 reply      
I'll try and answer your 3 questions.

1. As with most things it depends, but I'll make the mistake of assuming you don't need all of this data in memory and you won't be iterating over the entire set of data on a regular (<1m) basis. In that case, it most likely makes sense to move to a relational database. You should ask yourself what kind of queries you're running on the data and pick something appropriate. But for the data you're listing, then yeah - go with a relational DB.

2. Again "It depends". Postgresql is the most popular alternative to MySQL and I'd say at this point is more in vogue with the developer community. It's supported on AWS RDS and Heroku has a great postgres.app for OSX. Your data is so simple that I'd encourage you to start there. In the future when you have specific needs then you can research more appropriate database technologies.

3. From what you've shown us then you should most likely move to a relational database. The size should shrink dramatically, too.

3
hkarthik 2 days ago 0 replies      
Any relational DB will work but I would look at Postgres before going with MySQL.
4
nielskrijger 1 day ago 0 replies      
Without going into any level of technical depth, I'll offer my two cents.

"Write-heavy" means your application processes thousands of records per minute. Three million orders on a monthly basis doesn't look like too big of a deal. Any database should be able to manage that easily. Redis would have been my last pick to do that. Redis I only use when to keep high-volatile non-essential data in memory, not much else.

Key in picking your database is how your data is being used. Are the most recent data records accessed most often and the rest almost never? MongoDB and an RDBMS will do quite nicely. Do you really expect _extremely_ heavy growth, a NoSQL datastore might be better. Are DBA's in short supply? Use a managed datastore.

As a big fan of NoSQL, I'd say; be cautious when using NoSQL datastores. Any SQL database will do the majority of workloads quite nicely and offer you with plenty of tools to do any type of query you might need to. NoSQL databases do analytical queries usually quite poorly; separating OLTP and OLAP is painful and costly for smaller apps, only for that reason it is best to avoid them in most circumstances.

Above all; use what you can run cheapest. The available skillset should play a role too, if most engineers are familiar with SQL Server, use SQL Server... I generally use MySQL or PostgreSQL on RDS (AWS) given DBA's are hard to find. I use DynamoDB when I have extremely high dataloads. I use MongoDB when developing a common app for NodeJS because NodeJS simply works very well with MongoDB I consider other NoSQL datastores only when processing many millions of records per day. For all the rest (and majority of use cases); pick an RDBMS.

// In production I've used Oracle DB, MySQL, PostgreSQL, MongoDB, DynamoDB, Cassandra, Google Cloud Datastore, Redis, RedShift and Elasticsearch.

5
sganguly 1 day ago 0 replies      
Hi Gary4gar, Read the points that you stated in your question. If you focus on growth (clearly your wins are going to bring more data updates as your increase the customer base) you should look into a solution that does not tie you down with data model and also does not expect you to worry about sharding in the future. Having done sharding and when one keeps growing the data volume and having to do shards it becomes painful and hurts the development flow. Been there many time and done it quite a bit myself. (Am a technical guys myself, http://www.linkedin.com/in/sukantag)

Look for a NoSQL solution which will help in the flexi-schema model. Helps you add different types of data models relatively easily. Check out Aerospike (http://www.aerospike.com), the product scales like scaling problems have disappeared from this planet. All of the characteristics that you would need based on what you have stated is in the product. Best of all it is free for startups. Just give it shot. Open Source server and client libraries in multiple programming languages. (Am a big "C" and Python guys so like them client libs a lot). Lots of startups and many large software companies use them.

If you like it and works for your application tell others, if not tell us what did not work.

I ain't sellin and you ain't buyin;

Ciao

6
itamarhaber 22 hours ago 0 replies      
Regarding 3 - I don't know if you (or anyone for that matter) are wrong or right about this (or anything), but there are ways to use Redis w/o upgrading to bigger machines. Redis cluster, as mentioned in @bendmorris comment, is one way to go about it.

Alternatively, if you want to continue using Redis - with the current or a slimmer version of the data model - without having to worry about machine upgrades or clusters, then I recommend that you look at http://redislabs.com/redis-cloud (disclaimer - I work at Redis Labs). Our managed service is built using production-proven Redis clusters that allow your database to scale well beyond the limits of any single node, without you having do anything or change a line of code.

7
ColinCera 1 day ago 0 replies      
If you don't want to worry about database/server administration and scaling issues, I'd recommend looking at Cloudant. It's quite inexpensive, takes virtually no administration effort, scales automatically, and is fast and flexible.

You could continue to use Redis as a write cache, although a message queue or something like Kafka might be better for that purpose, and of course as a read cache, while using Cloudant or some other "real" database for permanent storage.

(On a side note, you described your application as "write-heavy" but you also said you get "about 3 Million individual customer orders on monthly basis" which works out to just slightly more than one record to insert per second, on average, which doesn't seem "write-heavy" to me. I understand that you get orders submitted in batches, rather than evenly distributed, but it still doesn't seem especially write heavy. At any rate, a database like Cloudant can take as many writes as you want to throw at it.)

(Disclaimer: I don't work for Cloudant; I am a satisfied customer; I don't use Cloudant for everything.)

8
kruk 2 days ago 0 replies      
1,2) As so many have pointed out already, this type of data is what relational databases excel at manipulating. Unless you already have a MySQL server running, I'd recommend you try PostgreSQL. It offers great performance and scalability.

3) Redis is a great tool in its own right but it's more of a key-value data store than a full fledged database. It's fantastic for caching, tasks queuing or cross application communication.

9
rmetzler 2 days ago 1 reply      
TL;DR: you don't have to use one or another, use both!

Your use case, running a restaurant is certainly a mixed use case. You'll certainly want to query the latest orders if this is going from the waiter to the kitchen. But yesterday's orders aren't that much important.

As others have mentioned, this data is exactly the kind of data you would store in a relational database. Just be sure to not query for the last 10 orders or something like that. I'm not a real database expert, but I've made this mistake before and as far as I know ordering by date usually means a full table scan.

RDBMS shine when you just store your data and run interesting queries on that data whenever you want to answer a question about that data. Redis is the other way around. If you want to query your data, you'll have to think about your question ahead of time and store it in an appropriate data structure.

What I was wondering is, do you shard your data in different databases? I would guess, every customer should have their on

10
bendmorris 2 days ago 1 reply      
Why did you choose Redis in the first place?

Redis does have its own (official but not at a stable release yet) cluster implementation. (http://redis.io/topics/cluster-spec) I'm not sure how production ready it is - has anyone here tried it?

11
auganov 1 day ago 0 replies      
Would be helpful if you shared what your reads are like. Are they limited to a single customer or span the whole db? How fast do you need the "read-side" [or some portion of it] to be aware of the new writes?Also remember that there's nothing stopping you from using multiple databases. I.e. if you run complex analytically queries that are just impossible to execute even in soft real time it's very reasonable to have a separate database for that does that very well.
12
revelation 2 days ago 1 reply      
I don't have an opinion re redis to MySQL, but it seems like right now the cheapest options is to simply buy a server with 256+ GB of RAM. These are pretty common by now.
13
jrochkind1 2 days ago 1 reply      
There's no easy answer i don't think. it depends.

If you decide it makes sense to switch to an rdbms, you should probably consider postgres rather than MySQL.

14
ScottBurson 2 days ago 1 reply      
I wouldn't even consider using MySQL. Postgres (aka PostgreSQL) is an industrial-strength open-source RDBMS.

I can't comment on the non-relational options as I've never used them, but for your data volume I would expect Postgres to be adequate.

15
imanaccount247 2 days ago 3 replies      
>moving from redis

Yes. It is a very poor choice for your needs.

>to mysql

No. It is a very poor choice in general.

>What other databases

Postgresql obviously. I'm honestly shocked that people are still considering mysql in 2014.

16
rubiquity 2 days ago 0 replies      
Riak[0] could also potentially be a good fit for your use case. Unlike Redis, Riak is distributed. I've heard of several companies in the POS space using it.

0 - http://basho.com/riak/

17
ayushghosh 2 days ago 0 replies      
Use a document store like mongoDB, use redis for frequently used data only, Mysql is also great, maria db would be better or percona.

I think redis should have current data only which may be needed to process or crunch daily sales or so etc.

18
sirdavidhuang 2 days ago 0 replies      
I think Apache Cassandra DB is what you are looking for.

Apache: The Apache Cassandra database is the right choice when you need scalability and high availability without compromising performance. Linear scalability and proven fault-tolerance on commodity hardware or cloud infrastructure make it the perfect platform for mission-critical data. Cassandra's support for replicating across multiple datacenters is best-in-class, providing lower latency for your users and the peace of mind of knowing that you can survive regional outages.

http://cassandra.apache.org/

http://planetcassandra.org/getting-started-with-apache-cassa...

19
mud_dauber 2 days ago 0 replies      
Here's another vote. Definitely move away from Redis for the reasons already stated. Choosing MySQL or Postgres depends on your dev team's relative comfort with each.
20
diminish 2 days ago 1 reply      
mysql, mariadb or postgresql would be ok.

>> menu_items - string(comma seprated list of all menu items that customer ordered along with their price & Qty)

you may prefer to rework the menu_items as an independent table depending on your uses cases and if you don't have strong reason against.

21
resca79 2 days ago 0 replies      
I think redis is excellent choice for evil writes.Redis has many kinds of configuration[1]Do you use the base package configuration or you add additional config options?

[1]http://redis.io/topics/persistence

22
kxo 2 days ago 0 replies      
You could try FoundationDB, with or without the SQL layer.
23
Kiro 2 days ago 0 replies      
2. MongoDB.
24
davismwfl 1 day ago 0 replies      
I don't think you are to this point yet, but a RDBMS under heavy write load can run into a lot of headaches too, requiring a very carefully designed schema and proper disk sub-system (lots of IOPS), plus the need to have a solid DBA to maintain it. However, non of that is a vote against moving to the RDBMS, so I do think you should seriously consider Postgres or MySQL though as it seems like a good fit.

What I would consider though is keeping your Redis up front for accepting/processing the records in real time coming in and then batching them into your RDBMS. This provides you the ability to do reporting and other analytics through the RDBMS, but utilize Redis as a buffer for the writes. It also gives you the ability to massage the data into the specific schema that best fits the usage of the data in the RDBMS, but allowing the most efficient schema coming into Redis from the POS systems. It adds complexity though so that would have to be weighed.

29
Ask HN: What is Google doing with GIS data?
5 points by hellbanner  6 days ago   1 comment top
1
perrygeo 1 day ago 0 replies      
The biggest projects that I'm aware of are google maps (managing imagery, base maps, road and place data, etc) and google earth engine (a platform for raster satellite data analysis) but I suspect there is a large spatial component to their advertising wing, incorporating location from mobile devices into predictive algorithms.
       cached 21 October 2014 20:05:01 GMT