hacker news with inline top comments    .. more ..    14 Feb 2016 Ask
home   ask   best   2 years ago   
1
8tracks is going US and Canada only, blocking other countries
2 points by showsover  5 hours ago   1 comment top
1
ldd 1 hour ago 0 replies      
Oh, at least Canada is explicitly named. For many businesses, "north america = USA".

I haven't really tried 8tracks but most streaming media have a very limited J-pop selection and no South American genres (cumbia, waynos, etc) so I never use them anyways. Good luck though!

2
Ask HN: Stale job posting and suggestion for getting a job at FB or Google?
3 points by ugenetics  8 hours ago   2 comments top 2
1
DrScump 2 hours ago 0 replies      
One motivation for fake/dummy postings is feign compliance with H-1B/L-1 constraints about having pursued legally-eligible workers already. This is discussed in detail in:

https://news.ycombinator.com/item?id=10970166

(scroll down to "nommm-nommm"'s subthread for specific video evidence)

2
kele 3 hours ago 0 replies      
The big companies never really stop hiring, so there's no point to close a job posting.
3
What time does your company get to work?
6 points by 13of40  8 hours ago   6 comments top 5
1
pathy 1 hour ago 0 replies      
Our company policy is quite standard for BigCorps in Sweden:

8-17, with 45 minutes of lunch. Flextime +-1 hour (i.e 7-16, 9-18).

We trade 15 min of lunch (60->45) during the year for only working 7 hrs during the summer, so 8-16 between June and August. Practically everyone is off in July so it is a good deal for the company strictly speaking but that one hour does make a bigger difference than I thought it would.

In my current project most get in between 7 and 8 but in other parts of the IT organization most get in closer to 9. Varies a bit and many have kids so they tend to arrive late or leave early.

2
Gustomaximus 3 hours ago 0 replies      
Mid-size corp office in Sydney: the bulk come in around 9am. We're flexible as many people are working cross timezones and generally a progressive worker mentality.

My experience is big corps require you to be in earlier, but there are much less burning the midnight oil days.

3
brandonb927 5 hours ago 1 reply      
Our company policy is "in before standup at 11am", I usually roll in anytime between 9 and 10:30 depending on traffic
4
aprdm 1 hour ago 0 replies      
10:00 to 18:00startup london
5
joesmo 8 hours ago 0 replies      
Whenever I wake up (usually before noon).
4
Ask HN: What do you use to manage dotfiles?
87 points by polm23  4 days ago   89 comments top 47
1
StreakyCobra 4 days ago 7 replies      
I use:

 git init --bare $HOME/.myconf alias config='/usr/bin/git --git-dir=$HOME/.myconf/ --work-tree=$HOME' config config status.showUntrackedFiles no
where my ~/.myconf directory is a git bare repository. Then any file within the home folder can be versioned with normal commands like:

 config status config add .vimrc config commit -m "Add vimrc" config add .config/redshift.conf config commit -m "Add redshift config" config push
And so one

No extra tooling, no symlinks, files are tracked on a version control system, you can use different branches for different computers, you can replicate you configuration easily on new installation.

2
berdario 4 days ago 0 replies      
Ansible and my own python script.

I use ansible, to template my gitconfig for different unix machines, and to install software that might be referenced in a dotfile

https://github.com/berdario/dotfiles/blob/master/setup/roles...

https://github.com/berdario/dotfiles/blob/master/setup/feynm...

(I have a separate branch for windows, but I found out that branches are not a good solution for this, since unlike feature branches, they'll never be truly merged... and unlike maintainance branches, they'll never stop being touched due to being out of maintanance)

And I use my own script, to also support Windows (since ansible supports windows targets, but cannot be used from Windows)... I defined this table with the destination for the symlinks (or, in the case of .ghci the destination where to copy it, since symlinking it wouldn't work)

https://github.com/berdario/dotfiles/blob/master/deploy.py#L...

3
mintplant 4 days ago 1 reply      
4
profsnuggles 4 days ago 0 replies      
Git and Xstow. I have a small shell script that parses the xstow.ini file and creates all the directories I have listed under the [keep-dirs] directive in order to prevent it from deleting empty directories or replacing them with links.

 #!/usr/bin/env bash #Read the keep directories from xstow.ini ini="$(<'xstow.ini')" IFS=$'\n' && ini=( ${ini} ) ini=( ${ini[*]/\ =/=} ) # remove tabs before = ini=( ${ini[*]/=\ /=} ) # remove tabs after = ini=( ${ini[*]/\ =\ /=} ) # remove anything with a space around = #for each keep dir make sure it exists in the home dir for i in ${ini[@]} do if [[ $i =~ ^\ *dir ]] then eval $i mkdir $dir fi done

5
s_kilk 4 days ago 1 reply      
I just rebuild them by hand whenever I need to.

It helps weed out the crap I've accumulated since the last machine rebuild, and makes sure I don't end up with an ever-growing hairball of dotfile madness.

6
gjulianm 4 days ago 1 reply      
I think no one has mentioned rcm[1]. I just maintain a private git repository cloned in .dotfiles in each system I own, and use rcm to set up symbolic links properly. It works pretty well with directories and lets you choose between creating and populating it with symlinks, or just symlinking the whole directory. For example, I can symlink the full .vim directory (including git submodules) and only link some files inside the .ssh directory (link the config file to my .dotfiles repo but leave ssh keys alone).

1: https://robots.thoughtbot.com/rcm-for-rc-files-in-dotfiles-r...

7
knlje 4 days ago 0 replies      
I have all my dotfiles in Dropbox and create symlinks to those. I require some 'quasi-secrets' in my configs and therefore I do not use Github.
8
celadevra_ 4 days ago 3 replies      
Emacs Org-mode's org-babel functionality. I have a few org-mode files storing all the dotfiles, put under version control. I can update and deploy them from within Emacs.
9
Kototama 4 days ago 0 replies      
10
Brajeshwar 4 days ago 0 replies      
Heard good things about stow[1]. Haven't moved to it personally. I'm still stuck with manual symlinks.

1. https://www.gnu.org/software/stow/

11
atmosx 1 day ago 0 replies      
I a Syncthing directory called "Data/" where my personal files are. Then I have a script which creates symlinks between ~/.dir and Sync/Data/dir and that's it, simple but works.
12
git-pull 3 days ago 0 replies      
I've probably spent hundreds of hours across all my configs over the years. In the old days, I'd rsync config files manually. Having frustrating times where I had to start everything over again.

I have a lot to say on the subject.

1. Like other users here, git is a great way version your files. Not just that, it handles the issue you have with keeping the configs of various systems in sync.

1b. It doesn't have to be GitHub, but understand pushing to some remote gives you a backup, and a way to keep the latest configs you have in sync across multiple machines.

2. As a rule of thumb, the more POSIX compliant you are, the more cross-compatible your dot-configs will be. In my case, a great deal of my config works superbly across Ubuntu, FreeBSD and OS X with no modification whatsoever.

3. dotfiles (https://pypi.python.org/pypi/dotfiles) is very helpful for building those initial symlinks.

4. Tangentially related is PATH's. Definitely be sure you're not accidentally appending multiple one's over again or omitting ones you want to search. For this, I recommend a pathappend function like one used at http://superuser.com/a/753948.

5. As for managing vim / neovim, I'm coming to the realization the amount of time I've spent trying to configure completion / fix tiny things over the years probably makes me lose the net benefit vim has given me. Too bad there is no intellij for the CLI. In any event, I keep a vim config at https://github.com/tony/vim-config which I document extensively. It has quite a lot of bells and whistles, but lazy loads and checks the system before installing certain plugins. It should work with neovim too.

I keep my central dot-configs (along with its submodules) at https://github.com/tony/.dot-config. Its permissively licensed, so feel free to copy whatever you'd like.

13
vok5 4 days ago 0 replies      
I have everything in ~/dotfiles which is a git repository here: https://github.com/dmarcoux/dotfiles. Basically, I use GNU Stow to symlink what I need. I have master which contains common config and one branch per computer. Everything is explained in the README, in more details if you want do know more. It's not perfect yet, I still have some small irritants, but I'm quite happy with this setup.
14
RazorX 3 days ago 0 replies      
I have a modular family of git repos with a 'dotfiles' one that pulls in the dependencies via bower and handles various bootstrapping and install steps. I also have one for my system config which works similarly. Vim, zsh, and tmux have their own standalone repos with one step install and updating scripts. They are written as normal plugins that load other plugins.

I want to avoid vendor lock-in to something like chef for this. The idea is that everything is either defined in a tool-agnostic config file, and bootstrapping / installing / updating the dependencies is handled by simple shell scripts. Down the road I can always swap out the tooling (bower, config_curator, archutil) without updating code in my repos since state is defined as data.

I don't like syslinks or putting ~/ under git as I don't want my working tree to affect my dotfiles until I run an "install" command.

https://github.com/rxrc

https://github.com/rxrc/dotfiles

15
jamescun 4 days ago 2 replies      
I see a trend of people maintaining a GitHub repo called `dotfiles` for their public configurations, myself included for zsh/tmux/vim/git. I haven't found a satisfactory way to sync secrets between machines other than via sneakernet.

https://github.com/jamescun/dotfiles

16
simi_ 4 days ago 1 reply      
I keep all my dotfiles in a repo at ~/cfg, and have a script to perform tasks such as creating symlinks (e.g. ~/.emacs.el -> ~/cfg/emacs.el) and installing brew, antigen, etc.

https://github.com/andreis/cfg

17
ssh0 2 days ago 0 replies      
I use bash based dotfiles manager "dot".

* https://github.com/ssh0/dot

And I have dotfiles repository at GitHub.Some files are hosted in Dropbox (for API keys and etc.).

my dotfiles:

* https://github.com/ssh0/dotfiles

18
chrisseaton 4 days ago 0 replies      
I try not to deviate from configuration default so that I don't need to manage any dot files.
19
riquito 4 days ago 0 replies      
I use a git repository, cloned in .myconfigs, with a script that create a symlink for any file in it (apart from .git and a couple more)

https://github.com/riquito/configs

The usage is

 git clone git@github.com:username/configs.git ~/.myconfigs cd ~/.myconfigs ./reinstall.sh
Whenever I update the repository, maybe adding files, I run this in the other computers:

 cd ~/.myconfigs git pull --ff-only ./reinstall.sh
which simply refresh the symlinks (I should remove stale symlinks now that I think about it, for removed configurations - never happened yet)

20
kiesel 3 days ago 0 replies      
I use homeshick (https://github.com/andsens/homeshick), a - as I understand - rewrite of homesick (ruby) in bash.

It needs to be sourced in .{bash,z}shrc and has features like tracking files from multiple repos (so called "castles"), auto-linking, auto-update every X days.

We also use it in our dev team to share some config (and ~/bin) files, works fine.

21
arc0re 4 days ago 0 replies      
Just git and Github.I have two folders, a .dotfiles (https://github.com/Arc0re/dotfiles) that contains stuff like .emacs (for each OS), .bashrc/.zshrc, etc, which I symlink into my $HOME folder, and an elisp (https://github.com/Arc0re/mac-elisp) folder that contains my Emacs themes and plugins.
22
charlieegan3 4 days ago 0 replies      
I have a GitHub repo with a script that sets everything up. https://github.com/charlieegan3/dotfiles

Seems to be quite a common pattern: https://github.com/search?o=desc&q=dotfiles&s=stars&type=Rep...

23
rcconf 3 days ago 0 replies      
My entire machine is setup using Ansible, Homebrew and Homebrew Cask. It works pretty well.

https://github.com/arianitu/setup-my-environment

https://github.com/arianitu/dotfiles

24
trengrj 4 days ago 0 replies      
I have a little Makefile that symlinks everything (WIP) https://github.com/trengrj/dotfiles/blob/master/Makefile.

I was previously using an automated Ruby script but found it inflexible and so have switched to a hand coded Makefile.

25
cJ0th 1 day ago 0 replies      
I only semi-regularly tar my dotfiles and dotfolders and then move the archive to an external drive.
26
srijanshetty 3 days ago 3 replies      
I use vcsh and my, I even wrote a blog post about it:https://srijanshetty.in/technical/vcsh-mr-dotfiles-nirvana/
27
pedrospdc 4 days ago 1 reply      
I use Homesick (https://github.com/technicalpickles/homesick).

It's basically a dotfile manager. Symbolically links your stuff and runs scripts.

29
sgtpep 3 days ago 0 replies      
Just git.

 cd ~ git init git remote add origin https://sgtpep@github.com/sgtpep/dotfiles.git git fetch git checkout -ft origin/master git config status.showUntrackedFiles no

30
girvo 4 days ago 0 replies      
I don't use anything, to be honest. My good friend wrote and uses this however: https://github.com/ncraike/dither
31
thiht 3 days ago 1 reply      

 cd ~ git init
And add this to a .gitignore:

 # Ignore everything * # Except the dotfiles I explicitely want to share !.vimrc !.tmux.conf # ...

32
YesThatTom2 4 days ago 0 replies      
Obsessive Compulsive Directoryhttp://wiki.eater.org/ocd

It is a very simple system for keeping your dotfiles (and other files) in Git.

33
gtf21 4 days ago 0 replies      
git + symlinks (https://github.com/gfarrell/dotfiles).I use a makefile to set everything up
34
peterbond9 3 days ago 0 replies      
Payday loans are fleeting cash propels intended to get you through to the following payday. You round out an application giving data about yourself and your salary online for moment endorsement http://www.1monthloan-uk.co.uk/. Once affirmed, a cash development is kept into your financial records the next day. The loan organization will charge installment from your financial records on your next payday.
35
yuvadam 4 days ago 0 replies      
dotfiles repo on Github + GNU Stow
37
lawpoop 3 days ago 0 replies      
I put several of my dotfiles as gists on github's gist site, in addition to storing my home directory in a repo.
38
AndrewVos 4 days ago 0 replies      
39
hiyer 3 days ago 0 replies      
41
thekaleb 4 days ago 0 replies      
My ~/.config directory is a git repository. I use some environment variables for utilities (like vim) that do not support the XDG spec.
42
ejrgoiejgeoi 4 days ago 0 replies      
43
bandrami 4 days ago 0 replies      
tar, scp, and a VPS server I've had for longer than I can remember (it's still running Lenny, if that helps -- its OpenSSL was too old to be vulnerable to Heartbleed...). Every new install, I scp the tarball and extract it to my home directory.
45
0x142857 4 days ago 0 replies      
nobody mentioned mackup? https://github.com/lra/mackup
46
yoshuaw 4 days ago 0 replies      
47
ejrgoiejgeoi 4 days ago 0 replies      
mr + vcsh
5
Ask HN: What do you do when feeling depressed?
18 points by kalzium  1 day ago   21 comments top 15
1
gesman 8 hours ago 0 replies      
Depression is like a bad weather.

You're under it and it seems like nothing you can do - which is essentially true.

That is - it's hard to fix "bad weather" to change it to "good weather".

The universal truth about bad weather that eventually it is going to change to good weather.

Although knowing this doesn't help when it's pouring rain, cold and miserable all over.

The action plan - is the fact of bad weather presence does not mean that you need to stop living.

And it also does not mean that you need to stop doing stuff you were doing before.

And it also mean that you don't really need to change the weather but keep doing your best to keep going your way.

In other words - it sucks, but let it be and keep going.

The worst thing to do when weather is freezing - is to sit and wait for weather to change. We all know why.

So, let it be.

Keep going.

That's it.

2
rtl49 21 hours ago 0 replies      
I recommend going to sleep if possible, or persevering with sleep in mind as something to look forward to. After waking, one tends to have a more harmonious frame of mind.

A sense of depression (and I assume you're referring to the emotion, not the medical condition) quite often has nothing to do with easily identified circumstances, the mind just tends toward the things it is dissatisfied with.

If you believe you have the medical condition, treat it like anything else: see a doctor. I know many people who have wasted years of their lives fearing a few moments of awkward discussion with their general practitioner. There's no rational reason to join them.

3
fractallyte 1 day ago 0 replies      
There are two things here to recognise and differentiate: depression (the clinical kind), and dejection (feeling down about things in general).

With the latter, you can work out a plan of action to gradually lift yourself out of misery. Since you're on HN, you're in a community of like-minded perceptive, intelligent individuals. There's an abundance of advice in previous threads on this subject.

The former is more complicated, and potentially dangerous. It's classified as a 'mental illness'. Professional assistance may be called for; other times one can recognise the effects, realizing that the cause is within rather than without. If a good night's sleep doesn't cure it, seek assistance...

4
SyneRyder 18 hours ago 0 replies      
Going outside in sunlight and walking to a park is my healthiest trick. But my most effective trick is going to a cafe & ordering a Large Chocolate Mocha with 2 or 3 shots of coffee. (Failing that, a chocolate ice cream sundae usually works too.)

When I was in Berlin, on the rare bad day, I would go to my closest train station, sit on a seat and watch the people go by. Inevitably someone would come up and ask me for directions. Helping someone even with my terrible German skills cheered me up.

These tricks aren't long term fixes (walking & sugary mochas won't help you earn more money), but they might give enough of a short term boost that you can get back to working on something productive, and thinking about how to fix the bigger issues (improving relationships, finding a better job, making new friends etc).

5
thrownear 17 hours ago 0 replies      
Workout.

Also, pick up local news paper and take a look. You will find enough suffering and pain in them to make your life look like a walk in the park, or in short, philosophy.

6
meric 1 day ago 1 reply      
You feel bad. It's perfectly fine, more than fine, in fact. Tell yourself it's good for you to feel what you're feeling right now. Because it is. Now, what are you feeling like you want to do? Does it hurt other people? No? Then go do it. Or you want to sit here and do nothing? Then do that. Just be.
7
iDemonix 18 hours ago 1 reply      
Smoke, drink and many other unhealthy things. I'm working on it, it's not going well mind you.
8
atsaloli 1 day ago 0 replies      
I take a walk and look at things to extrovert my attention (get myself out of my head/feelings). Bit of exercise helps as well (e.g. go for a run). After 30 minutes, I'm usually sweating and feeling much better.
9
throwaway201602 18 hours ago 0 replies      
I've been in quite the funk as well. None of the usual tricks seem to be working this time.

At this point, I'm just passing time with cigarettes and alcohol telling myself it's just Seasonal Affective Disorder and winter will be over soon.

I know this isn't very helpful, but maybe you can find solace in knowing that you are not alone.

10
korginator 1 day ago 0 replies      
A solid hour of cardio, followed by a cold shower and some rum afterwards.
11
arisAlexis 1 day ago 0 replies      
I am not joking I code or plan a new side project and serotonin flows
12
sabbasb 21 hours ago 0 replies      
I listen to music when I"m depressed and eat a lot. If it gets worse I simply go to sleep
13
Learn2win 1 day ago 0 replies      
Smoke j, Boxing, swimming... Talking to close friends.
14
DrNuke 23 hours ago 0 replies      
Get out of your cubicle, go where people go, watch people have fun, have fun yourself, keep staying among people.
15
angersock 1 day ago 1 reply      
I get something to eat, or I exercise.

Then I shitpost.

Sometimes I game.

6
Ask HN: What would a cosmic orchestra sound like?
2 points by mfburnett  18 hours ago   1 comment top
1
mfburnett 18 hours ago 0 replies      
For those curious, here's what the gravitational wave recently detected by LIGO sounds like, slowed down: http://www.techinsider.io/gravitational-wave-black-holes-sou...
7
Ask HN: How do you handle white-labeling product from a technical perspective?
4 points by bradleyjoyce  18 hours ago   5 comments top 2
1
aspratley 5 hours ago 0 replies      
I've done this on a small scale for web, never for mobile/apps though. My approach was a git repo containing the main code then a branch for each brand which only had config changes. It works ok but gets difficult to manage once your size grows - it's essentially using git as the build tool.

If I were to do it again I'd likely not use the branches for branding config, but keep them all in one place and use a build tool to make sure the required settings are in place and merged before deployment. As long as you tag your releases you can fix certain clients to certain releases.

Make sure you talk to your clients about what their branding requirements are. Some companies get very very specific about what they 'need' and as soon as you offer the ability to customise something they can get irritated if their brand doesn't look quite right. As others have said make all of these customisations part of a config file and just reference that in your code. Once you start making specific changes for a client your life becomes difficult and you end up managing a specific bunch of code just for them.

You didn't say if the white labeled app would be a public download of it it's intended for company staff. If it's the latter you can probably have a single app that gets configured on the first start up, i.e. it's blank when you open it, sign in and it pulls in the required config and then takes on the customer's brand.

2
amk_ 17 hours ago 1 reply      
Disclaimer: I've never done this before, but this is what I'd do.

Approach branding in the same way as internationalization. Instead of hardcoding strings, reference a config file that translates the logo/brand names/color scheme for the specific deployment. Look into how Shopify does this for their customers.

8
Ask HN: How do you organize data on your disk?
10 points by networked  1 day ago   4 comments top 4
1
zhte415 1 day ago 0 replies      
Corporate (banking) - across multiple departments and users - but I'd like to share:

Bucket

|- filename1

|- filename2

|- filename3

|- filename4

|- filename5

|- ...

I'm not joking. This is because I worked in an organisation where directory structures and silo'd access across each department were removed, and everything got thrown into a pool of documents with files that needed to be correctly names, and attached meta data filled out.

Most people hated it.

But I loved it, because it brought a discipline of accurate filenames and attaching correct meta-data. It brought strong disciplines on security/permissions. It brought an audit trail of who had opened or edited what and when.

Whenever I see a department of a company with endless directory upon directory of files with data replicated across them, I know the department has big people trouble - stuff is being done manually and operational controls are weak. Like seeing Excel sheets with merged cells = non-normalised tables that cannot be pivot-tabled = staff don't know basic Excel functionality = stuff is being done manually, time wasted, effort duplicated.

Everything was accessed by search. This also brought strong levels of discovery: Formerly, a document in another department could have been useful to me, but I'd not know of its existence unless I'd caught wind of someone working on this problem before. Now, with correct permissioning, I would see it through search. This saved incredible amounts of time. I also know that what I wrote 10 years ago isn't stuck in a directory that no one knows exists, it is at the fingertips of anyone who needs it.

2
kalzium 1 day ago 0 replies      
I'm really horrible at this. As neat as I keep my git repos, I'm a chaotic keeping my disk organized.My desktop started to regularly get crowded with files since I had a computer with an OS that made that possible.Still move everything to "Stuff" whenever it gets too crowded and I don't want to make the decision yet whether I should delete this particular file or not. At least I have a "Code", "Git" and "Stuff" folder now.
3
jcoffland 1 day ago 0 replies      
My home directory looks something like this:

 bin/ - scripts I use build/ - software I build doc/ biz/ taxes/ YYYY/ ... budgets/ receipts/ house/ travel/ personal/ notes/ ... projects/ projectA/ docs/ invoices/ contracts/ proposals/ presentations/ ... bin/ src/ repoA/ ... archive/ - old data people/ johndoe/ - sent to me by someone else YYYYMMDD/ ... ... ... projectN/ crap/ - Junk organized by date YYYYMMDD/ ...

4
jhildings 23 hours ago 0 replies      
I put most of the things i download on the desktop, and when it's to cluttered i create a folder like "downloads2" and repeat until the "downloads3" is needed ;D
9
Apple iAd App Network will be discontinued on June 30
11 points by jorkos  1 day ago   1 comment top
10
ASK HN: What Coding Language Should I Learn?
4 points by bookjunkie13  23 hours ago   10 comments top 8
1
arunkumarl 20 hours ago 0 replies      
Since you said web design, I am assuming you want to build a website.

So, Ruby on Rails.

Rails is a stack that has:

Ruby - a very simple developer friendly language. This is responsible for putting together

JavaScript - this lang is responsible for all the fancy stuff you see on websites. The animations and all.

HTML, CSS - this is the stuff that websites are made of. Ruby and JavaScript are used to generate this the way you want.

I used to be an accountant and started coding in Nov 2014. I have many rails apps ever since as prototypes and maintain one app that is in production (meaning people use it).

I used this Rails Tutorial by Michael Hart (https://www.railstutorial.org/book) significantly. You will end up with a cool website at no cost at the end of the book.

I also highly recommend Codecademy courses on HTML, CSS, JavaScript and Ruby.

If you are really serious about this stuff, which is great news, you might want to read more about making software. Start with the Pragmatic Programmer. It is a great book to read in your formative years.

And finally (this is important), try to solve a problem (like building a website for yourself or a friend etc) with programming. Learning just to know doesn't stick for long in my experience and probably is true for others.

2
slang800 22 hours ago 1 reply      
Start with Python because it's relatively easy and makes sense. [Learn Python the Hard Way](http://learnpythonthehardway.org/book/) is a good resource.

After you've got a Python project under your belt, learn JavaScript because pretty much every programmer will need to use JS at some point. [MDN](https://developer.mozilla.org/) is a good reference for JS, CSS, and HTML. W3Schools is a terrible resource and should be avoided.

Finally, learn a LISP (like Clojure/ClojureScript) because it will expand the way you think about programming and learn at least one lower-level language (like Rust or C / C++).

You should also learn Bash or Zsh as you go. I wouldn't recommend shell-scripting languages for large projects, but they are immensely useful for tasks like file manipulation, and you will need to know how to work with a terminal for system administration tasks.

3
saluki 20 hours ago 0 replies      
Initially you'll want to learn

HTML->CSS->javascript

Track down a copy of Head First HTML & CSS to get started.

I recommend installing MAMP or WAMP for a local web host and using sublime text as your editor.

Starting from scratch, use the book Head First HTML and CSS (you can probably get through your library or a digital version)

Once you have a few local websites setup, get a hosting account (hostgator is ok for learning) FTP up your site using filezilla, buy a domain, learn to point it to your hosting.

Next get the book head first PHP & MySQL.

You'll learn PHP and MySQL building on top of what you've learned in the first book.

After you have completed that book. Pick a project to create for your self. A todo list maybe. Code it from scratch using what you've learned.

Next I would look at jQuery and learn how to improve the front end of your todo list.

Next step up would be learning a framework if you want to continue learning backend coding.

I recommend Laravel(PHP) or Rails(Ruby).

I'd recommend developing on a mac for both. Windows tends to have issues doing even the basic tutorials where you'll spend half a day troubleshooting only to find out it's a windows problem that needs a work around.

There are lots of tutorials for both.

Railscasts.com and Laracasts.com are good places to start.

You don't need to dive in to these till you have a solid foundation of HTML->CSS->javascript->jQuery->PHP->MySQL.

There is lots of learn so move at your own pace, see what you like.

Photoshop is a nice skill for editing creating images for your sites.

TeamTreehouse.com is a good paid site for learning.

Good luck, have fun.

4
timothybone 8 hours ago 0 replies      
I like to think a good programming book will teach you theory along with showing you what an implementation in a language is going to look like.

While you still find it's hard to decide which language is superior to learn, maybe do some comparisons? You could look at some samples of different languages very easily, e.g. get on github and browse around! Then perhaps you gravitate naturally towards how one looks?

It could be nice, just starting out and all, to enjoy the natural elegance of languages: consider solving some project euler problems...then you can look at solutions in all sorts of languages! What fun.

5
throweway 3 hours ago 0 replies      
I think Java would not be a bad choice as a general first language. And Javascript if web is your thing.
6
ninjakeyboard 22 hours ago 0 replies      
Depends on)1) Who you ask, their opinions etc (and there are many)2) What you want to do. Coding is too big of a field to say "you should learn this language." Javascript is ubiquitous and you can do most anything with it (especially work with browsers) but it's also not the loveliest language.

You mention web design so then CSS, Javascript and HTML would be the logical choices.

If you want to learn to code, though, then I would personally suggest learning a functional language - maybe Clojure or Scala? That's a highly opinionated recommendation because my own experience has shown me that learning functional programming makes you more capable with other more imperative languages. This might be of interest. http://www.cs.utexas.edu/users/EWD/OtherDocs/To%20the%20Budg...

Most people would likely recommend something like python or ruby or even Java. There are many opinions. I would look at what you want to do first, and then choose the technologies that are used in that problem domain.

Coursera has courses that you can take for free. It would be a good place to start.

7
atsaloli 19 hours ago 0 replies      
I second the recommendation for Michael Hartl's Ruby on Rails tutorial, https://www.railstutorial.org/book

You can learn enough on Michael's website http://www.learnenough.com/

8
bossx 11 hours ago 0 replies      
What is your goal? What type of projects are you looking to code?
11
Ask HN: An accountability group to finally ship the thing you're working on
11 points by arrmn  1 day ago   8 comments top 3
1
jtfairbank 1 day ago 0 replies      
I don't think an open community would work very well. The signal::noise ratio for each individual would be very high and they would have no social obligation to follow up with eachother. It seems no different than posting the latest update to Facebook / a blog / HN / Product Hunt.

My two cents is to find driven people you already know and get a small group (5-10) together to do this.

YC does this by subdividing its now larger batches into different groups that meet together with their mentors every two weeks. On my own, I created a slack channel with about 10 other U of I founders. We can all commiserate about our startups, help eachother out with intros, and share good news and progress. Its more meaningful as well due to the shared friendships and history.

PS: If you're an Illini founder hit me up to join our slack. :)

2
HeyLaughingBoy 1 day ago 0 replies      
Why? If you're so easily distracted, perhaps the thing you're working on isn't very interesting to you. There is zero value in finishing something just so you can say "I finished it."

IOW: quitting is underrated.

3
MiddTech 1 day ago 2 replies      
Sounds like a "mastermind" or something approximating one.

There is a service for matching people together for masterminds - > https://mastermindjam.com/

Just to be clear, there is no requirement to use a/the service, if you have people you know that works too.

There is a lot of information around about structure and potential pitfalls as well as their solutions.

Edit: No explanation

Edit: Clarification

12
What are concrete examples of mistakes junior devs often make?
10 points by lpcrealmadrid  1 day ago   10 comments top 6
1
beat 1 day ago 1 reply      
"SELECT" isn't broken. (h/t The Pragmatic Programmer, by Hunt and Thomas) Junior programmers will sometimes think the problems they encounter are the fault of bugs in well-tested system software, rather than their own code. (1)

The implementers of the legacy code aren't stupid. It's very common for junior programmers, tossed into the swamp of some codebase that's been around for years through many different hands, think the code is junk and the original implementers were fools. Usually, it's just that the problem is much more complicated than the juniors understand, and that's how the code got that way.

New tools probably won't solve the problem. There's a tendency with junior programmers to whine about the antique tools in use, convinced that the new Foobaz framework or Language X will magically clear up the issues they encounter. But the problems with code usually aren't from the tools used to build the code - they're from failure to understand the requirements, and time/scope/resource constraints on development.

Perfect isn't as important as finished. It's easy to get caught up in perfectionism. It's a good excuse to avoid releasing something you find embarrassing into the world. But the more time you squander polishing that turd, the less time you have for the next tur... er, cool new project.

If you can't write a test for it, you don't understand it well enough. Writing good tests is hard. It's easy to fall into a trap of "That's too hard to test. I'll just sort of check manually to make sure it works". This will bite you in the ass later!

(1) My first really good bug as a junior programmer actually was a "SELECT is broken" kind of problem (technically, mmap() was broken). I went to a great deal of effort to prove to the senior programmers (and then IBM) that my code was actually correct and I had an OS bug. And if some junior programmer came to me today and said a deep system call like mmap() was broken, I'd laugh at her and tell her to check her code. So sometimes, SELECT actually is broken - just not as often as junior programmers think.

2
davismwfl 1 day ago 0 replies      
Ok two personal pet peeves. 1: Check your code 100% before you say someone else is at fault. 2: You should assume the engineer before you had a reason for doing the things he did, do NOT assume they are an idiot until you have conclusive evidence that they are.

I say this after having spent a huge amount of time taking over code bases and figuring out that the reason people make engineering decisions sometimes have nothing to do with engineering. Many times the decisions are based upon some business process or "guidance" that led/pushed them down the path. That does not make the engineer or software necessarily bad, it makes the process or guidance faulty.

So many times as a consultant I come in and start researching the code and issues, and then work with the business to understand their issues. Then review the code and find that the code does exactly what they asked it to do (as stupid as it may be), but not what they intended. Do not assume an engineer before you made a mistake until you have proven they have. Assume you haven't seen all the facts initially and dig more. 80 or 90% of consulting is asking the questions to find out why more then how, understanding why tells you the how most of the time.

Just my 2 cents.

3
kalzium 1 day ago 1 reply      
1) When someone comments on your pull request about how you could make your code more efficient - don't get upset - be happy to learn and get better at coding. And get back at your code and refactor it.

2) If someone is mean to you. Like really _mean_ to you, tell them. (Or tell team lead etc...) Some examples are:- UX guy jumping up on you grabbing your keyboard while in the middle of complicated rebase = not ok!- other developers not talking to you/ not helping you because they feel superior = not ok!- random people coming up to your desk demanding you take immediate action because they experienced 'some bug' = not ok!- people sending you cryptic emails "everything looks fucked up" = ... relax, tell them to send screenshots

3) Take breaks!I actually think this is one of the hardest points and I still cannot get myself up sometimes for breaks - but yeah - fucking take breaks! You don't need to go out with the smokers every 40 mins, but try to break for lunch and mayyybeee socialize (if your co-workers are actually sociable)

4) I can't believe I'm actually posting this but - if you happen to be a straight male and there's a female on the team... ugh... don't stare at her boobs or at her in general - talk to her about code - yes there are female coders out there and fyi they are just like you so don't be too creepy and listen to what they have to say about your code. -__-

4
petervandijck 12 hours ago 0 replies      
- Over-engineer architecture (or the tech stack), including not-invented-here-syndrome.

- Underestimate dev time needed, especially the "second 90%".

- Early optimization, from unnecessary loops to unnecessary tech stack selection.

5
acesubido 1 day ago 1 reply      
When trying to understand a bug, taking up a new framework, or anything with learning: don't read too fast. Read slowly and make sure you understand it. Read the stack trace. If you're 100% sure the documentation is lacking, read the source code, search through the issues, and ping the maintainer. Make a pull request while you're at it. It's okay to spend 1 day debugging by learning the foundations of a framework, rather than 1 day copy-pasting every StackOverflow answer you come across. That approach wastes your time without learning properly in the process.

6-10 years ago we didn't have all these frameworks and libraries. Junior devs are now faced with a mountain of these things that they can easily copy-paste without understanding what's underneath the hood. Make sure they keep the hacker ethos and try to open up those boxes from time to time, so that they'll understand the foundations of certain pieces of software.

6
gamechangr 1 day ago 0 replies      
This question has been asked sooooooooooo many times that some are worn out answering it.

Look at Quora. You will find a couple hundred answers.

Hope that helps.

13
Ask HN: Do you know of any bootcamps for computer security?
11 points by jc_811  2 days ago   5 comments top 4
1
runjake 2 days ago 0 replies      
Offensive Security's PWK course is probably your best bet. In-depth training and a highly-regarded certification. Online mentoring via web forums and IRC and they are great folks.

I went through PWK and its predecessor PWB.

It's pretty damned cheap and you can get from 30-90 days lab time. I recommend 90 days, though.

It is kinda boot camp style and pretty demanding. You will learn how to chase the EIP CPU register and write your own exploits, as well as web vulns, sqli, etc etc.

https://www.offensive-security.com/information-security-trai...

2
jtfairbank 1 day ago 0 replies      
Not quite what you are looking for, but there are lots of fun challenge sites out there you can use to learn and practice. http://www.wechall.net/ has a good list.
3
dsacco 2 days ago 0 replies      
Cody Brocious used to run Breaker 101, that's the only "bootcamp" I'm aware of.

If you'd like to learn, read The Web Application Hacker's Handbook. That's all you need for a strong start.

4
a_lifters_life 2 days ago 1 reply      
Check out Sans.org
14
Ask HN: How many internet-connected microphones are in the same room as you?
7 points by cryptoz  1 day ago   2 comments top 2
2
cryptoz 1 day ago 0 replies      
I work in a startup co-working space, with an open office plan. I estimate 400-500 connected microphones, probably about the same number of video cameras as well.
15
Ask HN: Slow paying client and how do you deal with them?
7 points by zenincognito  2 days ago   15 comments top 7
1
brudgers 1 day ago 0 replies      
To a first approximation, when a client doesn't pay on time, I stop working for them. Clients who don't pay are worse than one less client because there's no income and there is an allocation of resources...both directly and to collections.

There are cases where I have had a long standing relationship with a good client who was experiencing short term problems and let me know about it and we worked something out. Those cases are very rare and required an existing good relationship.

On the other hand, people who started out slow to pay never get better.

Good luck.

2
MrTonyD 2 days ago 2 replies      
I had this problem, and solved it by giving discounts. Hopefully, your pricing will allow this. It is fairly standard to see a notation on an invoice like 1/10 net 30

That means you will give a 1% discount if they pay in 10 days, or the entire undiscounted invoice is due in 30 days. This made a huge difference in my business, since all my customers wanted the discount.

I should add that I was doing projects and billing for projects for the Fortune 50 - with a good margin. So I'm not sure if this will apply to your customers.

3
gavinbaker 1 day ago 1 reply      
We have a small agency, and have these issues too. Most of the time it is just the occasional slow payed invoice. If they get past two weeks we shoot them an email.

Things we do to lower the risk as much as we can. #1 we get paid upfront for the month. #2 We always ask for a credit card or ACH as part of the contract, we still do get checks because for some that is the preferred method for them, but we try to get the CC / ACH.

For us, if it's becoming an issue over 1-2 months, I'll personally make the ask and find out if something is wrong. I try to give them the benefit of the doubt that the invoice isn't getting to them or was missed.

Something people have suggested is when the payment is late, a nice notification email that just says that you haven't received payment for this month and according to policy, work is suspended until payment is received.

The reason we don't do this is because for us 100% of the time it has been a missed invoice, not an intentional stoppage of payment.

4
saluki 1 day ago 1 reply      
Monthly subscriptions for your monthly services . . .

Setup your payments with Stripe so they are recurring subscriptions . . . this will keep them paid on time.

I expect most clients will just signup so they don't have to handle your invoices.

I would start getting your slow to pay clients signed up first but roll this out to all clients. If a client is shying away from signing up offer them a discount to get on subscription payment.

For slow/non-paying clients . . . not on subscription . . . a friendly email reminder that invoice are due upon receipt or 30 days net (spell out terms on invoice). After 30 days we will stop providing services till invoices are caught up.

Good luck.

5
davismwfl 1 day ago 1 reply      
I have lived this many times over. You will always have clients like this, these are the best ways I have found so far.

1: do not give net 30 day terms unless a client has earned them or applied via credit. Some exceptions can be made for large firms, but many small to medium businesses are terrible about paying. Large businesses might be a little slow, but almost always pay consistently the same, unless there is a known issue.

2: If you do give net 30 terms (or anything more then 10 days), provide a discount for payment within 10 days. This makes almost all larger businesses prioritize your invoice and get you paid. You may think it is minor, but many businesses do this over hundreds or sometimes thousands of invoices and they save significant amounts of money doing so.

3: Make payment details clear within your TOS/contract. For my smaller consulting clients, if their invoice was unpaid after 3 days from the due date I stopped all work and they lost their spot in line for services. So essentially most of those clients had 7-10 days to pay me or I halted all work. I also had it up front that if that happened 2 times within a short period (defined in the contract) that all future work (if accepted) would be prepaid. This was part of my non-negotiable contract terms. For my SaaS product, I used similar terms, we billed their credit card for small/mid sized clients (generally under $2k/month) and if their card was denied or we were unable to collect that months service after 5 days we suspend their account until it was brought current. They typically had until the next billing cycle to do so and then their account was disabled and couldn't be reactivated without talking to me. For enterprise clients on the SaaS product we used invoice terms with a built in discount and a time bomb suspension, it was just typically a little longer as I never had an enterprise not pay.

Employing those three strategies fixed most of our cash flow issues and helped stress levels go down drastically. But sadly, it never fixes all the issues so like others said, no client is better then one sucking up resources, dump them.

Also, I had clients get super upset when their accounts got suspended or we stopped working their project and they went back into the queue. But in the end, it isn't my problem, it is theirs. I would always try to empathize with them and would work with some to help out where it seemed right, but in the end, fuck you pay me. https://www.youtube.com/watch?v=jVkLVRt6c1U

6
thisisdallas 1 day ago 0 replies      
I prefer the horse head in bed route. Seems to work about 92% of the time.
7
chrisked 2 days ago 0 replies      
Speak open and friendly to your client that it is important for you being paid on time. I would always call over email a client. You get a better feel on what's going on. If multiple follow up attempts fail, I'd speak more serious and eventually involve a lawyer. You could also explore selling your invoices. Factoring can be a good way to mitigate the cash flow issues.
16
Ask HN: Best places in Europe to leave city life and work on your projects?
41 points by thrrrrr  3 days ago   29 comments top 18
1
emmasz 8 hours ago 1 reply      
Just come to Romania. There is a town called Sfantu Gheorghe near Brasov. There really isn't much to do here. You can have all the quiet you want, even more. When I moved here from a big city, it took me a while to get used to it and literally stop hearing quietness. And there's plenty of nature and mountains and stuff.
2
mhoad 3 days ago 2 replies      
Can I very strongly recommend this http://sende.co/

I was looking for exactly the same thing about 9 months ago and came across this. My girlfriend and I visited and we weren't sure what to expect at all. We immediately fell in love with the place and ended up buying a house there (for under $10k).

The couple who are 'running' it are amazing people and are looking to turn this entire Spanish village into one big makerspace.

3
yetanotheracc 7 hours ago 0 replies      
2.5 hour flight to Krakow or Warsaw, then take EIC train to https://www.airbnb.co.uk/s/Zakopane--Poland
4
trumbitta2 2 days ago 0 replies      
Cagliari - Sardinia - Italy

Lovely city, optic fiber (not everywhere), LTE/4G, Sardinia is a paradise for beaches and mountains alike.

http://www.independent.co.uk/travel/48-hours-in/cagliari-tra...

Also: https://www.guidemeright.com/ was born in Cagliari

5
Leander_B 3 days ago 2 replies      
Tarifa (ES), has some small 'digital nomad' scene and nature, sea and mountains. Other option is Granada (ES), some of the highest mountains of Europe, good weather but nature/mountains a bit dry compared to Switzerland

Brasov (RO), fast internet (faster than UK), good food, friendly people and more nature and mountains (Carpates) than you can hope for (and bears for bonus points). Also good priced vs Switzerland and nature wise looking very similar, Brasov and surroundings being more unspoiled. With what you would spend in Switzerland you'll be able to live 3-4 months in Brasov in the same conditions.

6
thecupisblue 3 days ago 1 reply      
Croatia!Flights from UK can cost around 10 euros sometimes, you can get a place for real cheap (under 100 GBP per month), beer costs about 1-1.5 GBP in bars, lunch in a restaurant can be as low as 2.5 GBP and life in general is pretty cheap (most people here live on 300-350 GBP per month). You can live on the seaside, on an island, in the mountains, in a city or combination of any of those. Literally, pick any 2 and you can find a place like that.
7
dwgetjg 3 days ago 0 replies      
Pomorie, Bulgaria. Try a quick Google image search and you'll get the picture. Small town colonized since ancient Thracian times with beautiful beaches, a salt lake of unique biodiversity, and magnificent vineyards - quiet even during peak tourist season.

Fast internet, delicious food, cheap rent, and an abundance of talented programmers.

A 2hr drive takes you into one of 3 mountain ranges (Balkan, Rila, Pirin), a 5 minute walk takes you to windsurfing or any variety of watersports.

(If you're looking for a place to stay or have any questions -- okolobeta@gmail.com)

8
thorin 3 days ago 0 replies      
Don't go to Switzerland. Flying into Malaga southern Spain there are lovely mountain areas between seville and Granada, Google el chorro for example. Or east of Rome about an hour or two are some wonderful mountain regions-you might find a hotel near sulmona. Or mallorca, sardinia, sicily all have fabulous scenery, history, lifestyle.
9
phillc73 3 days ago 0 replies      
How big do the mountains need to be?

I moved from London to Graz, Austria[0] a couple of years ago. The city has a population of roughly 300k and is surrounded by large hills.

There are some really good universities here, so quite a lot of interesting research happening, and a decent night life (although with a young family I don't get to see much of it).

A car would be useful for exploring the countryside, but a bicycle would certainly see you in the middle of "nature" easily within 30 minutes ride.

Speaking German would help, but not mandatory, as almost everyone speaks some English. If you have your own projects to work on, then you're in a good position. Trying to find employment here, without speaking German, is quite difficult, mostly due to the small population base.

There is an English speaking language group that meets at a bar on Thursday nights.[1]

There are around half a dozen co-working spaces which charge in the region of 20-25 per day, with discounts for monthly commitments.[2]

Transport to and from the UK isn't brilliant. There are no cheap direct flights (some might see this as a positive!), so your options are Lufthansa with a connection somewhere, or train to Vienna and direct on Austrian or Easyjet from there.

In short, it's a nice little city, reasonable climate, good architecture, decent cultural attractions especially in semester, good natural surroundings, but if you're from somewhere big in the UK, like London, it'll seem very, very quiet.

Happy to help if you want more info.

[0] https://en.wikipedia.org/wiki/Graz

[1] http://www.anglo-austrian.at/

[2] http://coworkinggraz.net/

10
ponyous 3 days ago 0 replies      
If you like Switzerland you will like Slovenia, countryside is not that much different, it's not expensive to live and you have lots of nice places to visit. There are not lots of meetups though...
11
roryisok 3 days ago 0 replies      
West of Ireland! Ok, I'm biased, I live here. But the scenery is nice, the pace is easy going, and everyone speaks english. It's also not going to break the bank to get here. It's not nearly as expensive here as Switzerland / Norway / Sweden etc. Westport in Co. Mayo is surrounded by beautiful scenery and was voted best place to live in Ireland. Pretty views, nice friendly people and great food. Internet can be slow if you venture away from towns, but most towns have decent speeds.
12
marvel_boy 3 days ago 1 reply      
Barcelona & Lisbon.
13
atmosx 3 days ago 0 replies      
Greek Islands (e.g. Crete) can be both cheap and beautiful.

Central Europe, from Lago di Como (IT) to Konstanz (DE) - breathtakingly beautiful German city that borders with Switzerland - there are lots of amazing places.

14
thorin 3 days ago 0 replies      
Morocco, marrakesh or essourira would also be a cheap option.
15
stuaxo 3 days ago 0 replies      
Wales near Snowdonia ?
16
rbeard 2 days ago 0 replies      
West of Scotland is worth considering.
17
gspyrou 3 days ago 1 reply      
Santorini , Greece.
18
jekbao 3 days ago 0 replies      
Outside of Europe.

What about Asia like Thailand and Indonesia?

17
Ask HN: Feels like my brain doesn't want to work anymore
31 points by testpass  4 days ago   23 comments top 10
1
imd23 4 days ago 1 reply      
I Will tell you something I wish my psychology would had told me: go some weeks to the coolest hostel you can. Don't go with your laptop, go just to have fun, meet people, to enjoy your present, that you are fucking alive. In fact if the hostel is good, you will be able to make at least 20 new "friends" almost fucking instantly. You will hear so many different life stories and you will tell yours. This year I went to one with some friends after living a big depression of the same "working" feeling and just by the second day I was feeling "fuck I wish I had done this way before ". I overstayed alone for two more weeks than my friends. I even ended working in and from the hostel and staying for free. Hope it helps you as it did for me.
2
junto 4 days ago 1 reply      
Life is a balance. This persistent lack of sleep, stress and over-exertion needs to be given back. Your mind and body are trying to tell you something. You need to listen.

Take some time off if you can afford it. Travelling is a good way to get away from everything related to work. No computers and mobile phone.

When you come back, you'll have lots of new perspectives, new ideas and feel refreshed.

I'm not sure where you live, but if you are in the US, try a flight down to central America with a backpack and a good pair of walking boots, keep your mind open, watch your back and you'll have a blast.

The backpacking trail through central America is awesome. Depending on how frugal you are, you can live pretty cheaply.

3
jlangenauer 4 days ago 0 replies      
It takes time to recover from burnout - sometimes months. The best thing for you to do is just let that take its course, and not try to push yourself back to 100%. That will only bake in the burnout, and it'll take longer for your to recover.

So go on holidays, meet with friends, read fiction, find some new hobbies. Whatever gives you pleasure, and isn't work, or an attempt to push yourself.

And with time, you will find yourself returning to how you were.

4
onion2k 4 days ago 0 replies      
But... it's not the 100% capacity I know I can exhibit.

That'll be the 100% capacity that you did for a while and it burnt you out, right?

No one can work at "100% capacity" forever. You need to rest, to relax, and to do things that aren't work and aren't "productive". That downtime is recuperative and informative. As counterproductive as it might sound, taking time away from your computer to do other things makes you a better developer.

Working at what feels like 90% all the time is better than working at 100% for 6 months and then working at 40% for the following 6 months when you're burnt out.

5
thenomad 4 days ago 5 replies      
Just in case the occasional anti-games mentality rears its ugly head around here: whilst there are lots of good suggestions coming up, games are certainly a pretty solid way to relax too.

In the last couple of months I've been recovering from mild-to-moderate burnout symptoms myself, and a lot of how I've been doing that is playing The Witcher 3. It works. (It probably helps if the game you're playing is one of the most astonishing artistic creations of the last couple of years, to be fair.)

The big thing is this: you can't force it. One plausible explanation for burnout is that it's a defense mechanism from your subconscious against excessive delayed gratification: if you're very self-disciplined and work very hard on something that you think will give you rewards in the end, but doesn't whilst you're doing it, then don't get those rewards, after a while you start building up subconscious resistance to doing that again.

It sounds like you're not too long away from the death-march project. If so, just give it some more time of not trying to do things (counter-intuitive and often scary for highly motivated people, I know), and see how you're doing in a month or two.

6
greeneyedpea81 1 day ago 0 replies      
I am currently in the same position you are in except with school. I love learning but I am burned out from reading chapters on top of chapters and writing "novels". My brain is definitely on strike and the quality of work I am producing is not the best. Not to mention, I am averging about 3 to 4 hours of sleep a night.

I decided to take a break for a few months after this last class I am in. I did not want to, however at this point it is very necessary. I can't wait to just do nothing for a day or two.

I hope you find balance and are able to find some time to step away from everything to reset.

7
Outdoorsman 3 days ago 0 replies      
This can be a crazy profession that will willingly chew people up...

Realize that....when money's to be made some will drive you until you can no longer function....

There's a lot to life...part of it is fast-lane, part of it is slow-lane...different parts have their purpose...

What matters is which lane is right for you right now...choose wisely, and take care of yourself...

8
sharmi 3 days ago 0 replies      
If travelling is not your cup of tea, doing a little creative art work ( or anything that can be done is a short time and have a tangible result to show for it) can do wonders.

One of the causes of burnout is putting in long hours to finish something that later amounts to nothing (because it never gets released or the end product is much below your expectations). All work and no satisfaction.

In such cases, small work that can be accomplished in a few hours can give back the oomph factor and infuse some energy into one's life. Glass painting worked marvels for me. Nowadays I find it fun to just take my time and colour a picture with crayons :) Yep I have kids.

A cross country hike or some carpentry maybe?

9
cabraca 4 days ago 0 replies      
you are like a battery. if you need to work 100%, you also need time to recharge. take a vacation, without laptop, without phone, far away from tech. take some friends with your and just clear your head.
10
911 3 days ago 0 replies      
same
18
Rubik's Harmony: Cracking a Rubik's Cube with Music
2 points by minakhan  1 day ago   2 comments top 2
1
trcollinson 20 hours ago 0 replies      
I won't even begin to discuss how horrible of a scam this stuff is. I will speak to the Rubik's cube for a moment though. First off, we know that a Rubik's cube has 43.25 Quintillion possible starting combinations. Any one of these combinations can be solved in 20 moves or less (we know this from a team of researchers who used a super computer to calculate all of the possible moves). So while you could memorize a set of musical cords for each possibility, it would be an insane number of things to memorize. Interesting scam premise though.

At any rate, learning to solve the cube is actually a very enjoyable and relaxing activity that I believe helps my brain, at the very least. There are a number of systems for solving the cube. I use CFOP. With it I can solve any cube in under 30 seconds. Much of it is intuitive with the memorization about 100 algorithms (technically there are 119 total: 41 for the f2l, 57 oll's, and 21 pll's. I use all of the oll's and pll's and only a few of the f2l's. I mostly finish the f2l by intuition). Don't get tricked into buying some neat system for the cube. Ask the experts. You can get all of the algorithms for free online for numerous systems. Grab a cube and just have fun!

2
spraveenitpro 1 day ago 0 replies      
SCAM!!!
19
Ask HN: Is there a collected database of university courses?
6 points by civilian  1 day ago   1 comment top
1
psyklic 1 day ago 0 replies      
20
Ask HN: How to get hired in a hardware startup?
4 points by Akapoor  15 hours ago   2 comments top
1
petervandijck 12 hours ago 1 reply      
When you say it doesn't work for you, what do you mean? You've tried applying for jobs and not getting interviews?
21
Ask HN: What are the best options for cloud IDEs?
11 points by JadoJodo  2 days ago   15 comments top 12
1
joeyspn 2 days ago 2 replies      
A couple of weeks ago, researching options for remote pair programming I signed up to Cloud9... and I was quite (positively) surprised! They give you a full VM/container so you can play with a proper Terminal..

I only disliked one thing.. I couldn't install yeoman for scaffolding some apps.. I don't know why! I'll need more research...

2
JadoJodo 2 days ago 0 replies      
One of the ones I recall seeing (and can't remember) allowed you to use your own Digital Ocean/AWS instance instead of using theirs. I've also seen an old post on reddit suggesting a DIY instance of Codebox (https://github.com/CodeboxIDE/codebox) but it no longer appears to be updated.

The others I've heard of are Koding (https://koding.com/features/solo#get-started), Codio (https://codio.com), and Runnable (https://runnable.io/, doesn't appear to be an IDE).

3
noodlio 2 days ago 0 replies      
My personal favorite: Cloud9 (c9.io). Includes many built-in functionalities and they have a responsive support team.
4
jesserwilliams 1 day ago 0 replies      
I would suggest checking out Codenvy (http://codenvy.com) they recently released a new On-Prem version built on Eclipse Che (http://www.eclipse.org/che). Che has made some big steps forward recently, if you haven't looked into it lately I would strongly suggest taking some time to check it out.
5
MattF 2 days ago 0 replies      
I like Nitrous (nitrous.io/) - they have just reintroduced a free plan.

I use it to code C++. It's nowhere near the levels of VS2015, obviously, but it allows me to have a free dev box in the cloud.

6
flxn 2 days ago 1 reply      
One that was not mentioned is Codeanywhere https://codeanywhere.com
7
fgandiya 2 days ago 0 replies      
I'd been using Cloud 9 c9.io. It's really good since it gives you a terminal and repl shell to play with.

The only issue is that c9 seems more suited for web development.

8
rpetersn 2 days ago 0 replies      
Loving Cloud9 (c9.io) We've been using it for over a year now as our primary team development tool and couldn't be happier.
9
nkristoffersen 2 days ago 0 replies      
Codio has been my favorite. Very great for web development. I used it for a couple years to program from chrome books!However, their business model has shifted to a more education focus, so I can't say if they'll continue to focus as much on badass web development ide.
10
arc0re 2 days ago 0 replies      
You can have a look at Eclipse Che, I tested it not so long ago and it was pretty good.
11
newdaynewuser 1 day ago 0 replies      
I like ShiftEdit (https://shiftedit.net/).
12
quintes 2 days ago 0 replies      
codenvy.com was neat but I ended up going back to net beans and Visual studio
22
Ask HN: Government law as code?
5 points by brianclements  1 day ago   7 comments top 5
1
amptorn 1 day ago 1 reply      
Yes, you do always need humans to enforce/interpret the laws. Don't be absurd.

The alternative is kind of like that scene in Robocop, except ED-209 is a judge instead of a robot, it sentences you to death rather than killing you directly (the bailiff obeys unquestioningly), and instead of frantically trying to shut the machine down, everybody in the room agrees that you were indeed carrying the gun, and almost certainly still are.

You ask for a retrial and it takes 1/50th of a second to spit out exactly the same response. The rationale for the verdict is a procedurally generated AST running to 5200 pages, which is incoherent not only to you but also to lawyers and programmers alike. (You are given a copy of it on a USB stick, but no computer to read it with.)

A country where laws are applied with absolutely no nuance, context, consideration, empathy or judgement is a petrifying hellscape. A pretty good Black Mirror episode, in fact.

E: this is all ignoring how awful human beings are at software development.

2
bachback 1 day ago 0 replies      
Bitcoin + consensus + smart contracts

Bitcoin already enforces practical law in some sense. If you dig into this it all comes down to property rights, which now can be implemented on the net with blockchains. Ethereum attempts to go a step further along these lines, but its not practical yet IMO. You're right, this is a very fertile ground.

3
BWStearns 1 day ago 1 reply      
There's a lawyer at the MIT media lab named Dazza Greenwood who is working on projects along these lines. My understanding is that he's already working with Boston to get any city ordinances that are amenable to the challenge to also be published with valid code of some sort. He has really worked through a lot of the issues and is really open about talking on the subject.

The formalization of all law into code fully is probably not fully achievable in the near term since there are many component parts of legal tests that are not really deterministically resolvable, and I think it would be a hard sell that justice is properly served if a call to rand() played a part in adjudication or sentencing.

I think a more profitable way to start integrating code is within the realm of contract law. A contract described in code has some advantages over even a well written legal prose contract: it's testable, components could be more easily reusable, in some circumstances it could self-monitor for breach, it's easily diffable. Such contracts could be made to be more transparent (assuming good faith and code-literacy) and less prone to purposely unenforcible clauses etc (law linter?). Some such contracts might be progressively abstracted into a genuine and good faith "standard contract" for [thing]. Of course now you need two lawyers who both can also program comfortably in the same programming language and I have to imagine the first judge to interpret such a contract is going to be pissed as hell (or more optimistically intrigued).

As far as starting from scratch all the time, we don't really do that. The US legal system was basically just forked from England at first, and within the US we have a lot of model laws that are more or less universal (look at the https://en.wikipedia.org/wiki/Uniform_Law_Commission), but we do sometimes have some weird holdouts (pretty sure Louisiana still uses some Napoleonic code instead of UCC stuff).

Edit: sorry for the wall-o-text, also just thought of IoT/semi-autonomous agents that might require the autonomy to decide whether or not to enter into a legally binding agreement on behalf of the operator without necessarily knowing ahead of time the counterparty or the exact terms. It would be a lot easier for these kind of bots if there were some generic contracting convention or DSL or something. I'm thinking trading bots and maybe of an intelligent shopping bot.

4
detaro 1 day ago 0 replies      
Laws already struggle when words meet reality, code would even more. So, no, outside of very specific cases with a lot of conventional law to define the interfaces.

Law can already be kind of algorithmic, but it (IMHO) doesn't make much sense to have computers execute it.

5
minimaxir 1 day ago 0 replies      
No. Watch a few science fiction films. :p
23
Ask HN: Static site generation from mySql?
3 points by bigdipper  1 day ago   2 comments top
1
yoloswagins 1 day ago 1 reply      
I've written a small rails app, and used this rake task[1], to scrape the site, and s3_website[2] to push the site to S3.

Many people have recommended middleman[3]. While middleman is more flexible than other static site platforms, it still expects text files.

[1] https://gist.github.com/Eunoia/15ded6c0dc0d80cb5e0f[2] https://github.com/laurilehmijoki/s3_website[3] https://middlemanapp.com/

24
Ask HN: What companies are open to developers that seek part time work?
19 points by ritchiea  4 days ago   13 comments top 6
1
staunch 4 days ago 1 reply      
Lots of very small companies will happily do 1099 contracts without trying to control your time at all. The hard part is finding those contracts, which usually come through networking and existing clients.

You might try emailing companies offering to work as a 1099 contractor, which companies sometimes like because it means you're easier to fire and don't get benefits, etc.

Most companies want a very serious full-time commitment and will be disappointed if you don't work there for at least a few years.

2
jtfairbank 4 days ago 1 reply      
What's your stack? We might be interested in that. Probably looking at 1099, unless you're willing to take a significant reduction in pay since we provide full healthcare benefits, etc.

Small YC startup here- https://reschedulemed.com

3
stephenr 2 days ago 0 replies      
Forgive me, I'm not familiar with all the us tax/irs related codes - is "1099 contractor" similar to Australia's "sole trader" - where you are registered as an individual doing business and can therefore issue tax invoices like a company?
4
gerso 4 days ago 0 replies      
A bit ago Verba (SF) was offering 3 or 4 days a week, although I got the impression they still preferred 5.
5
tmaly 2 days ago 0 replies      
there was some IRS law/rule in the 1980s that made hiring contractors less attractive for this type of arrangement. I remember reading about it years ago, but the specifics do not come to mind now.
6
Mz 3 days ago 2 replies      
Have you considered a service, like Upwork?
25
Ask HN: Best way to render latex equations in GitHub readme?
2 points by chatmasta  1 day ago   5 comments top 5
2
detaro 1 day ago 0 replies      
It's possible pandoc can do that? (It can take markdwon with embedded LaTeX as input, I don't know if can export markdown + images from that)

If you find something, please report back, it seems like something that would be useful to have documented somewhere

3
zippy786 18 hours ago 0 replies      
You can easily convert a dvi to png.

https://www.ctan.org/pkg/dvipng

4
brianjking 1 day ago 0 replies      
5
brianjking 1 day ago 0 replies      
What if made the readme a restructuredtext file instead of Markdown?
26
Aging, mediocre programmer seeks wise fellow programmers/technical folks
14 points by dennis_jeeves  2 days ago   17 comments top 6
1
accountatwork 1 day ago 0 replies      
I believe you're overestimating what it takes to get a job at Google (or Facebook or whatever other company you might be thinking of).

As someone who's approaching middle-age and has done a wide variety of interviews, it's my experience that large companies like Google have less age discrimination than trendy startups. If you don't want to work at Google because you don't think it's a good fit, I think that's a totally valid reason. But if you don't think you can get a job there because you're too mediocre at actual programming, I think you're simply wrong. For all I know, you actually are a mediocre programmer. That doesn't matter.

It's not possible to be too mediocre a developer to get a job at Google because the interview process doesn't measure how good a developer you are. It is possible to be too mediocre at whiteboarding algorithms and answering the brand of design questions they ask, but those are learnable skills.

2
orionblastar 2 days ago 1 reply      
I am 47 and on disability. I became disabled in 2003 and I get mentally ill in 2001. Had a hard time finding work after I became mentally ill. Also I was old, and ageism came into play as well. When I applied for jobs I was told I was overqualified. That is if they bothered to reply back at all.

I think when you get older in IT and you don't make it into management positions, it is harder to find work. Most companies want recent college graduates because they earn a lower salary and they have all of the latest theories still fresh in their minds.

3
coderKen 2 days ago 1 reply      
"most technical work or any work that requires deep focused thinking is a race to the bottom" - how is this true?
4
d4rkph1b3r 1 day ago 0 replies      
>As they say, most technical work or any work that requires deep focused thinking is a race to the bottom

Wtf is this? Are you trolling? Is this why folks are pulling in 250k or more as engineers?

5
thorin 2 days ago 0 replies      
I don't see this being the case in bigger companies in the uk e.g. government, health, utilities, finance. It will definitely help if you have some business specific knowledge too. Try to match this to where you live I'm in the Midlands and there are a lot of utilities and retail companies who can't get enough people, same with banking and finance in London.
6
andkon 2 days ago 0 replies      
That's tough that you feel that technical work is a race to the bottom. Do you feel like you're falling behind?
27
Ask HN: Do some YC values need to be softened?
10 points by cliffcrosland  1 day ago   6 comments top 6
1
manidoraisamy 1 day ago 0 replies      
Technically, macro was a crack. Not a hack. Hack should make things; Not break things.

But, I think you are right. Hacks have gone through the hype cycle. When every programmer wants to "hack" to be in the elite circle, they tend to push the boundaries that are grey -> unethical -> unlawful. It's like those greedy bankers - except that they want to look cool; instead of money.

2
jtfairbank 1 day ago 0 replies      
YC provides an ethics statement and code of conduct to every startup they fund, and is serious about following up on this.

The "startup = growth" and "hack-the-system" are good mantras inside or outside YC, but are not a "YC value".

If anything, I'd say the #1 thing that YC values are their founders, and they expect them to be smart, driven, and ethical.

3
coralreef 1 day ago 0 replies      
HomeJoy closed down because it couldn't drum up repeat business from its customers. At least according to this article: http://www.forbes.com/sites/ellenhuet/2015/07/23/what-really...
4
argonaut 1 day ago 0 replies      
What you are suggesting is that YC become more risk-averse (e.g. take less risks on founders that might be too aggressive).

If YC ever fails, it will be because they stopped taking risks, not because they took too many. For every 5 companies that rocket up and flame out spectacularly, there'll be a company that rockets up and stays up.

5
exolymph 1 day ago 0 replies      
The nature of the startup game is that the majority will go bust. It is what it is.
6
1123581321 1 day ago 0 replies      
PG wrote "Do Things that Don't Scale" less than a year after "Startup = Growth."
28
Ask HN: How to induce productive mania?
6 points by throwawaytoday2  2 days ago   14 comments top 7
1
ldehaan 2 days ago 1 reply      
When I get like this I can write code and design systems as easily as breathing, but only for short stints, and once I go to bed and get a full nights sleep I'm done for a couple days.

It's like hyper vigilance but all I see is the computer, it's awesome (probably unhealthy), but I can't turn it on and off. There are triggers that usually work though.

If I stay up playing past 10pm it almost always turns on, and all of a sudden it's 4am and I've got standup in a couple hours, but I got a shit load completed.

I used to be able to take a lot of uppers, like smoking and drinking too much coffee/red bull, and that would stretch it out, but I can't do that anymore because I want to live past 40.

So now I get the effects over shorter periods of time, and really only when I stay up late.

I also find that when I'm really exhausted from lack of sleep, it actually kicks in faster, but when I do that, I just end up sleeping all weekend because I invariably end up working on something until 4am every day.

I'm still trying to figure out how to attain that extreme level of focus at will but it feels like it would require me to stop focusing on computers/electronics to try to figure it out, and that simply won't do.

2
fooshint 18 hours ago 1 reply      
There was a book written to answer this exact question by psychologist Mihaly Csikszentmihalyi. It's titled "Flow: The Psychology of Optimal Experience"
3
giuscri 14 hours ago 1 reply      
You're hyper-productive when you feel you're working towards the goal of making your future better
4
kluck 2 days ago 1 reply      
Why I can not control what you mean:

1. Not much free time to code besides job, family and life.

2. Not possible while coding at work. That stuff is just too random and boring to be exciting.

So I suppose to induce "productive mania" you could:

1. Get big chunks of free time.

2. Do stuff you are excited about. Do them because You want to and not because of some other goal (like getting money, attention, rewards etc.).

I manage to get that for very small scripts that I program in order to get some small things done for me personally. Those things (I hesitate to call them tasks or projects) are always done quick, work like a charm and do exactly what I need. It gives me a good feeling.

5
logn 2 days ago 3 replies      
Try building something instead of learning something.

Also while programming I find I can stay productive if I always leave my project workspace where there's a bug or half-implemented feature I can start the next day.

6
andkon 2 days ago 0 replies      
If you're working on something hard, and you're working on something you care about, and you're pushing the limits of what you're capable of (but stopping short of being overwhelmed completely), you can do this.

But most of the time, several of those factors aren't ones you can control. The reality is that we have to work on mundane shit that we don't care about pretty frequently. Learning how to do that is much harder than learning how to be maniacally into something insanely cool.

7
crispytx 23 hours ago 0 replies      
Coffee, Energy Drinks
29
Options on Facebook ads as a financial product
3 points by mjnet  2 days ago   7 comments top 5
1
spoonie 2 hours ago 0 replies      
The main point of stock options is a tax hack: it's a way to give someone something (a promise) that has a face value but no taxable value. Generally speaking, you pay taxes on stock options when you exercise them, not when you earn them. The difference between strike price and market value at exercise time is incidental. I don't think stock options are a good analogy here. Maybe you want 'ad futures', like 'pork belly futures'.
2
bbcbasic 2 days ago 0 replies      
Business owner with great conversions won't participate. Business owner with sucky conversions will.

See http://www.investopedia.com/terms/l/lemons-problem.asp

3
AznHisoka 1 day ago 1 reply      
Impossible. Forget if anyone would want it. The Government would never allow it. Otherwise we'd have eBay options a long time ago.
4
thenomad 2 days ago 1 reply      
Slightly confused - who's generating the ads in this scenario, and who's paying for the ad space?
5
noodlio 2 days ago 0 replies      
Interesting, but how do you control/check that there was (not) a conversion?
30
Ask HN: How do you keep track of your personal finances?
13 points by lumannnn  3 days ago   20 comments top 17
1
luxpir 3 days ago 0 replies      
I haven't used it for personal finance, but ledger would probably cover your needs, and works from the CLI. You can keep your plain-text ledger file in version control etc. also.

- http://ledger-cli.org/

(There's also hledger that has a few extra features, but is largely compatible with ledger).

2
krmmalik 2 days ago 1 reply      
Im using YNAB - You Need A Budget. I can honestly say its changed my life. I would definitely recommend signing up for their 9 day email course. Ive been using it for about 5 months now and its made a huge difference to my life.
3
threefour 2 days ago 0 replies      
An alternative to Mint is http://www.hellowallet.com which I like more.

But analyzing transactions in your accounts is all about looking at the past. You might consider focusing on the future instead. For example:

1. Plan how much you want to save for retirement, vacation, etc. and how much you'll need to pay bills

2. Set up some automatic transfers to save the money for #1

3. Have fun with the rest / invest

#1 is easier said than done. Financial advisors can charge US$2000 to create a good plan. We're building a tool now to automate what they do.

4
nibs 2 days ago 0 replies      
I do budgeting in Google Sheets and use Mint for historical reviews. I recently helped my gf go from minimal money management to proper budgeting, forecasting and tracking, so I learned from experience what steps can be helpful to take and in what order to help understand things.

I think if you earn less than or equal to what you spend, the most important information is where your money is going so you can be aware of what is happening. If you earn more than what you spend, you want the same thing plus an ability to save and invest in something and track that.

I would suggest starting with something manual (ie. Google Sheets) and then automating once you see how everything comes together. Do things that don't scale (ie. enter every transaction) until you feel more in control, and then automate with Mint or similar tool for European market.

5
xgordon 3 days ago 0 replies      
My primary bank account have some Internet/mobile banking features where you can see your current spending, some prediction till end of month.

It's just simple overview because I have more bank accounts (due to security reasons). Personally the best way how you can track your spending is to create own customized reporting system. It will require tune up at the beginning but it worth. At least you will learn how to think about entire process and your spendings, which information is valuable and which not. You will be able create some additional features (like spending categorization).

I have more personal "tracking tools" (spending, time tracking, writing, idea etc.) written in excel, some in power-shell, some of them in HTML and PHP.

Other point of view is your psychological attitude to money. If you are responsible with spending your head might be enough. From my experience, money invested to food, bills and mortgage are "sunk costs".

Detail mortgage tracking is different story. It is always good to know how much you can save with different payment attitude.

6
juecd 2 days ago 0 replies      
I'm using https://www.simple.com/, which is a debit card but really a PFM (personal finance manager). I have a ton of goals set up with automatic daily "savings" that move a small amount of money into my goals (ranging from "haircut next month" to "Portland trip"), and Simple calculates how much to move each day based on the amount I need and target date the money's needed. Pretty granular, and I feel pretty in control without any spreadsheets or charts.
7
newdaynewuser 3 days ago 0 replies      
I highly recommend manually tracking in spreadsheet in addition to whatever automated tool you use. You can start with a simple, date, merchant, thing, and amount columns.

I used to use a spreadsheet. Then came Mint, and I thought my days of manual work were over. But then I realized that now I was less careful with my money. I would check Mint daily, I would look at each transaction but by removing manual step of inputting amount spend, I sort of got immune to big or a lot of spendings.

Now in addition to Mint & Personal Capital, I also record each transaction almost daily. This way it is very hard to ignore multiple transactions in a row for dining out or buying junk etc.

Also if Mint goes away or they start charging you will still have your spreadsheet.

8
DiabloD3 3 days ago 1 reply      
Unfortunately, one requires money to be able to keep track of it.

Someday. :(

9
meric 3 days ago 0 replies      
In my mind mostly. I keep track of the big pieces - the university debt, the stock portfolio, the bank account balance. On the day I get paid, I take out a chunk to repay debt, and take out a chunk to move to the portfolio, and whatever I have a left, it's a game of making it last. I keep a lookout every week on my expenses and make sure I have enough to last to payday.
10
crisopolis 2 days ago 0 replies      
For debts I use ReadyForZero.org and for the longest I did use Mint Bills aka Check aka Pageonce but Inuit has turned it into shit.

I still have a Mint account but rarely login to it.

#BugetFail

11
Stoot98 3 days ago 0 replies      
I used to use Xero's personal finances tool before they shut it down. I've started using Money Dashboard which seems pretty decent too.
12
wj 3 days ago 0 replies      
I'm eating my own dog food and using the budgeting portion of the financial planning software I'm creating.

I do really like YNAB though.

13
tmaly 2 days ago 0 replies      
In my mind, but I would not mind a reminder to tell me I have to pay something today.
14
Spooky23 3 days ago 0 replies      
Printed monthly calendar. My wife and I sit down on Thursday nights, eat Chinese and do the bills.
15
aprdm 2 days ago 1 reply      
using an excel spreadsheet! google drive mostly
16
piyushco 2 days ago 0 replies      
I use moneylover, works well.
17
ralmeida 1 day ago 0 replies      
Tried many alternatives, from GNUCash to MS Money to various iOS apps to heavily smart/complex spreadsheets to solutions in the local Brazilian market (GuiaBolso and Organizze).

GuiaBolso is most of what I use today, beucase it works like Mint, auto sync with banks. In Brazil, Mint does not work and getting statements automatically is a major PITA, so much that GuiaBolso is a major, funded startup, relying mostly on the auto sync feature.

Even then it's a bit ugly, they likely use web scraping, you have to share your internet banking password with the app, and some banks go the extra mile to prevent scraping, such as requiring a one-time access token (time generated) each time you want even to check your balance.

Good thing is, in most major banks, your "internet banking" password is a read-only one, since you need a second auth step to move money in any kind of fashion (either by entering the plastic card PIN, or by authorizing with a QR code from a previously-authenticated smartphone)

Side note: Brazilian banks, if you're somehow reading this, please add some dead simple, read-only, API-like mechanism to let me (or apps) automatically download statements.

It also attempts to autocategorize your transactions using black box magic (likely by your own historical categorizations + heuristics or some degree of machine learning as a catch-all net), and it gets most things right (especially credit/debt card spending, where it gets like 90% right), so that's a good start.

While it has nice features, it still doesn't do all I want. In pretty much every solution I tried, there was always something that was not quite how I'd like it to be.

So I decided to roll my own - I scrape data from GuiaBolso to an sqlite database, mix it with manually entered data (which I grab from sources where GuiaBolso does not reach), and built some Python scripts to fit things into my own category structure (GuiaBolso does not allow subcategories), and crunch numbers for more sophisticated analysis.

I did this because while GB's graphs cover some basic needs, there were still things left unanswered - how much do I spend per day of the week? Per day of the month? Only in a certain category, to avoid odd transactions interfering with the analysis? Am I spending more in large purchases from time to time, or consistently?

There's no way GuiaBolso will offer all of this, and it also does not offer any kind of data export (I would guess that their current business model depends a lot on data lock-in).

I also ordered a NuBank credit card, a smart-ish credit card, where everything is done via app or otherwise digitally - spending tracking, payments, order details lookup, etc, which I plan to try over the next few weeks and maybe integrate into my workflow somehow.

       cached 14 February 2016 13:05:03 GMT