Hacker Newsnew | past | comments | ask | show | jobs | submit | databus's commentslogin

Is there a way to know that this isn’t done with remote control, other than the company says so?


If you think people are just going to simply lie to you then how do you ever get anything out of reading things on the internet?


By getting multiple opinions, like what the GP is presumably doing by asking such a question on a forum like Hacker News.


Communicating financial or medical lies can lead to repercussions. The same should be true for communicating false political information.


I don't know, there's still a lot of dialogue about healing crystals and essential oils out there.


That's true, but you don't see too many people raiding oncology forums on behalf of big quartz.


I feel like this is going to be some huge electron-type update. Anyone know?



Is it possible to do this on Mac? Have a second, external keyboard mapped to a different language than the primary keyboard?


With lua + autohotkey scripts in windows this is definitely possible the last time I checked. You run a luascript on another keyboard mapped to a generic key, luascript inputs that as the proper text-based language

There's a tomscott video on it

https://www.youtube.com/watch?v=lIFE7h3m40U

Checkout Teran van Hemert (linustechtips editor) for some potential ideas too. He's got crazy macro schemas, I've used a couple of his and there great. All windows based as well though. https://www.youtube.com/playlist?list=PLH1gH0v9E3ruYrNyRbHhD...

Mac, I can only assume its something you would write in applescript. But maybe you find some interesting ideas there. I found something called "http://www.orderedbytes.com/controllermate/" that might be of interest to you



You could use Karabiner[1]. No need to do the “different language” hack, just make a big pile of key remappings that only affect that particular keyboard. It’s pretty easy to target just one input device with that.

1: https://pqrs.org/osx/karabiner/


The First Law of Autopilot should be: Don't run into shit. If this fails then it's not autopilot, it's "Autocrash".


Going to court and losing, while not fun, should be instructive to the GPL community. A loss will either point out areas that need to be changed in the next GPL license version, or that a GPL-style license is not viable.


Yes, it could prove helpful to the GPL community, but it might prove harmful to the kernel community. For all intents and purposes, the Linux kernel is permanently stuck in GPLv2. If a disastrous court case somehow weakens GPLv2 and a new and improved GPLv4 which fixes that weakness comes out, the kernel will be stuck with the now weakened GPLv2.


Or that lawyers in that country are terrible?


Where did you port your number to? Any suggestions for an alternative to GV?


For services that have feature parity with GV, I'd recommend ring.to. Note that ring.to is run by bandwidth.com, the same CLEC that Google Voice uses for most (all?) of its numbers, so porting is easy:

https://ring.to/#newservice

For a more hands-on alternative, Anveo is a good choice (and they have SIP and SMS short code support):

https://www.anveo.com/


ring.to sign-up seems to assume porting an existing number. Is there a way to sign up for a new number?


>RingTo launched over two years ago with a simple mission: help more people keep the phone numbers they love. In the spirit of moving forward, several changes are coming down the pipeline we want to share with you.

>In early 2016, RingTo will transition to a paid service and will no longer offer free accounts to new or existing users. But don’t worry, we’re making it worth your while to stay with us!

I'd say they haven't quite finished the new signup yet.

I guess this is a good thing? If it's paid it might stick around for a while longer.

Edit: not sure I'd touch them - http://us6.campaign-archive1.com/?u=9094a6314c49a804bd522a79...


I use voip.ms. It has a good service. Some limited SIP knowledge help if you wish to make it work ok.


Is it common for a lot of the source code live in header files? E.g. https://github.com/aardappel/treesheets/blob/master/src/cell... I'm not being sarcastic, just curious if this is normally done these days.


It's not common. This is the inspiration: http://strlen.com/java-style-classes-in-c


Thanks for that, good read.


Great deck! What business entity type (sole proprietorship, llc, ...) did you end up going with and has it changed over time?


It's an LLC, but for better or worse, that's not a decision that we put a lot of time into. So it's probably not a meaningful data point.


Have you personally had any problems with this setup? It sounds like for the scope of your company it would work well.


No problems yet. (Knock on wood.) We never had any ambition plans of raising money or going public, so we just wanted the simplest structure that wouldn't require extra costs or overhead. There might be tax implications, but that's more the realm of my business partner, so I'm not really qualified to offer any extensive advice there beyond the fact that you'd want to consult an accountant in addition to a lawyer when incorporating.


I see 17 mallocs and not one free!


That's acceptable for a command-line program that will terminate quickly. It's debatable whether this is good style, but it doesn't actually hurt.


Thanks, I was wondering if that was the case. I'm used to long running programs.

My strategy in c is as soon as I write the word "malloc" I figure out where to put the free.


I agree in theory. In practice, programs evolve and code gets reused. Omitting free calls because you expect the code to exit rapidly is a recipe for disaster once you change your mind later. It's much easier to put this stuff in from the start than it is to retrofit it later.


> That's acceptable for a command-line program that will terminate quickly

No, it isn't; you don't know how quickly the program will terminate, in general, and it only takes one program running longer than you expect to eat a horrible amount of RAM.


I'll make a stand for it being bad style to free() memory when in any reasonable run of the program exit() would free just as effectively. This is simply arena allocation; some very excellent, well-regarded C code uses arenas and pools in the same idiom.

The downside to calling free(), apart from performance (malloc/free are extremely expensive), is that messing them up creates bugs that are much worse than simply holding on to some allocator metadata until the program hits exit().


The upside to calling free() is that it is a valuable lesson in understanding memory lifetimes for a beginner programmer. You can't know when it's good to omit free until you know what it means.


> messing them up creates bugs

Messing them up exposes bugs that are likely to bite you in other ways. If you can't get malloc()/free() right, you don't really 'get' the flow control/data flow through your program yet and that is a problem.


Arena allocation is inherently simpler and less error-prone than demand-allocating and demand-freeing. It's not valid to say that arena allocation is "hiding" bugs; what it's doing is foreclosing on the possibility of having those bugs.

Virtually no large project has ever gotten malloc/free completely right in its first revision; for the past 20 years or so, most projects get this wrong to the tune of "remote code execution".


Not in general, no, but this particular program doesn't allocate a serious amount of memory (think `ls | less`) and doesn't contain any system calls which can reasonably block[1], so it's extremely unlikely to bite you in this case.

(I do think it's bad style, and would never write this program this way.)

[1] Assuming you stay away from the Zombie^W Network File System. But NFS mounts going away is bad news anyway, this program holding an extra KB of swappable memory doesn't really intensify the pain.


get sum valgrind up in hurrr


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: