You don’t have to live where you were born. Find a place where you feel like it’s ok to be you and a group of people who like you and share your values.
HN user
heleph
Navigating my city’s public transport with a stroller also gave me new appreciation of how difficult it must be for people in a wheelchair. There are only a handful of step free stations in my city.
Food labs actually levelled up my cooking to the next level. So many great recipes and ideas. It was a very readable book too, I pretty much read it cover to cover. The best thing was buying a meat thermometer. Why did I cook for so long without it?
I’ll have to try your other recommendations now. :)
Good on your mother for persisting until she got to the bottom of the brownie mystery! It’s a bit of a pity the company tampered with such a successful recipe!
My brownie recipe is from a cookbook and I tried a lot of variations on it and then had to concede that the person who wrote the recipe got it just right. I make it with high quality chocolate and butter and then am very careful not to over bake it and they turn out deliciously decadent every time!
I have Fridays off to spend with my kids too. It's really nice. I've always found it quite difficult to switch off, but after three days with the kids I go back to work refreshed and with a fresh sense of perspective.
It's lovely to have extra time to spend with them while they are small. I always look forward to our Friday adventures. I appreciate the feeling of space it gives my week.
While I was on mat leave I started working on my little side project while they napped just to keep my skills fresh and to exercise the part of my brain. I've kept doing that and really enjoy having the time to inch my little website along. There's not a massive amount of time in my life that's not being a parent or at work, so it's been really nice to have something where I can call the shots and just do something for myself.
My boss was very accommodating when I wanted to switch to a four day week. We had another older guy in the team who was working half time and spending the other half spin charity work. There were also some other parents in the department who did non-standard hours. I don't know if it would have occurred to me if there weren't already other people doing it.
Success is fun and should be celebrated. It's definitely something that's nice to achieve from time to time.
What is problematic is when you look for something in success that success can't give you. If you don't like yourself, success won't make you like yourself. If you need more connection in your life, success won't necessarily give you that feeling of connection. If you're looking for proof that you have value, there is never enough success to prove it.
Success is great, but may lead you into doing things that are suboptimal for you, if you chase it. I think it's only really satisfying if you're chasing something more meaningful and then you are successful at that. The other advantage if you're doing something more meaningful, it's meaningful even if you're not successful.
I met many of my local friends in a cafe here. We all have small kids, which give you a very easy opportunity to talk to people you don't know and make it difficult to spend time with a phone or laptop.
After four years of living in our town with kids, I almost always bump into people I know when we are out and about. I've never been so connected to the local community where I live before and I really love it. :)
It's a little bit dated now, but the C2 wiki is a fun place to read about software development. There are quite a lot of patterns, anti-patterns, practices, rambling debates and just generally interesting ideas: http://wiki.c2.com/?DesignByCommittee
The group of people you're working with may not be as mutable as you think. I've been working in my programming language community in the city where I live for about ten years. There are people I have worked with before at pretty much all the really attractive places that do the language I have the most expertise with. Probably people who know people I've worked with at many of the others too.
I have an anecdote about my experience not working for a long period of time. Sounds like I'm in quite a different place in my life to you but I hope you don't mind me sharing and maybe there might be some part of it that is useful. :)
I just spent a year on maternity leave when my second child was born in May last year and headed back to the office in April this year. I'm a software developer for a medium sized team.
Adjusting to not being at work was quite difficult for about the first four months, particularly towards the end of the fourth month where the novelty had worn off but I hadn't really figured it out yet.
Because it was my second leave, I knew that to be content I would have to work through my feelings around my identity without work. It was both difficult and freeing to rediscover myself outside of the pressures of work. I personally felt a little bit afraid that there wouldn't be much left (kind of sad, I know), but I tried to just stay patient with my feelings. I feel like my identity now is more grounded. It was interesting that actually most of the things I value about myself didn't really change. One less thing to feel irrationally afraid of, I guess. :)
With a toddler and a baby at home, I didn't have trouble filling my days, but I thought a lot about how I could best enjoy the time. My goal was just to feel content, not necessarily happy or fulfilled.
The best thing was spending time with my local mum friends. The kids and I would meet up with our friends during the day at least three times a week. I think having a strong, available local network was really important for feeling connected and staying sane.
I joined a local charity for supporting families with babies and ran a group for parents with new babies. It was lovely doing something I felt very passionate about that made the world a tiny bit better. It was kind of nice to be able to use my organisational skills to get it all up and running. A slightly surprising (to me) result was it expanded my social network quite a lot.
I worked on a personal programming project. With all the other things going on, I really needed something just for myself and to work my brain in that way. I would really look forward to the middle of the day when both my kids were resting.
At around four months, we all fell into a fairly comfortable routine. Our days had a fairly standard rhythm and we had regular playdates and play groups to break up the week. The weeks actually started to pass quite quickly at that point.
I feel quite proud that I learnt to live at a slower pace. I miss being able to walk the buggy up to the park just because the day is sunny. It felt quite luxurious to be able to spend as long as I (or my kids) wanted on things, to choose what I was going to do with my day and to not be on a timetable.
I was kind of ready to come back to work after my time was up (small kids are physically and emotionally demanding!), but I was really glad to have the experience. I think in an ideal world, I'd have a career break every five years. It was such a wonderful way to unwind and get some perspective on things.
I bought a Fitbit because I wanted to nudge my physical activity from sedentary into not noteworthy. I've been wearing it about three months and it has helped me do that.
The other smart phone things I really love are notifications about phone calls and alarms that make the phone vibrate. I almost always miss phone calls, so it's nice to have the option to pick them up. The vibrating alarm is much nicer than being woken by noise and also reminds me when I need to leave work to make it home in time to see my kids.
I'd really recommend it as a relatively low cost thing to try For anyone who is interested in trying a smart watch but doesn't want to spend a lot of money.
Or someone else in your team who tried to make the change last time it came around, who has now left and lives in another time zone.
I do UK to Australia every other year. I started in my early twenties and am now mid thirties. I've found jetlag has gotten worse as I've got older. I hardly felt it when I was 21! I'd say it takes about three days to be sleeping ok again now. My parents always take at least a week to recover.
Except this time. I had a six month old baby and jetlag felt completely the same as just being at home. :)
I think it's difficult because no one particular change is a problem and in isolation they are mostly completely reasonable. It's the accumulation of these changes that cause the code to rot.
There are a whole heap of "human nature" problems that are the same like getting into debt, being over weight, protecting the environment. The short term pay-off is fairly big, the contribution to the long term problem is very small.
Also the person who is often responsible for making the decision may not be technical, so finds it difficult to imagine the eventual impact. Plus in the fast moving field of software development, they'll be unlikely to even be around when it happens.
I have started sending samples to my kindle as a kind of place holder for books I'd like to read when I have time. It's saved me heaps of money!
I've got ten years of photos on Flickr and have been a paying subscriber almost that long.
For me my Flickr is my story of the past ten years: moving to the UK, share housing, meeting my husband, getting married, many fun holidays, having my son. What's important to me is the curation of my story, so features around automatically uploading photos and making albums are not important to me.
The other thing I used to like about Flickr was thoughtful community of people who created beautiful photos. There are still many beautiful photos to look through on there, but to be honest it's less important to me now than it used to be. I'm not really looking to reach out and make new friends in the way I was in 2004. My early photos were almost all public. My current ones are almost all friends and family only.
I probably would be open to considering another service if there was somewhere else I could keep my memories that was as good, but the people who are interested in the detail of my life are already on Flickr and the service is good enough that I can't really be bothered to move. I don't mind that it's not where the cool kids hang out.
I've always had to do that in the UK. Your previous employer gives you a form called a P45 when you leave that has information about your tax code and your earnings for the previous year.
I finally got around to reading Logicomix, a graphic novel about the development of mathematical logic around the first half of the 20th century. It's told as the story of Bertrand Russell and has a theme of wanting to understand the world through logic and madness.
I really loved Containment, one where the human race woke up one day to find that the stars had disappeared because the solar system had been placed in a huge container.
I loved how humanity reacted to having their horizons limited, but in an unexpected but potentially reversible way.
Greg Egan's stories always ask really great what-if questions. I think about them long after I read them. I'd actually forgotten that permutation cities was where those interesting ideas about consciousness came from.
What kind of thing would you say to avoid giving your current salary without appearing like a jerk?
Their problem is more that it's not installed on Mum's phone or tablet. :)
One thing that really helped me with resume writing is learning to think of it as advertising. You want to make it as easy for the person reading it to say yes to you as possible.
I'm involved with hiring pretty frequently and here are some things that help me: -don't bother listing every technology you've ever worked with. It's a waste of space. It doesn't give any context. Mention them in the context of your work history. - talk about the people stuff you were successful at as well as the technical stuff. - don't just say what you did, tell me why it mattered. For example "reduced build times from one hour to five minutes which enabled team to release twice a week rather than one a month"
One thing to remember when you are involved in the hiring process, particularly with technical people is they want to be able to say yes to you. Hiring probably isn't their main job and they have a hole in their team. If you are the right person for the job, it's a win for everyone involved.
Another thing that helps is having contacts that will let you know where opportunities are. The fantastic thing about having experience is you probably know a heap of people who can help. Getting involved with the local community around whatever area you're interested in can help you meet more people. I've also gotten jobs from being on related mailing lists and applying for positions that are posted.
If you're not sure your experienced is quite right, getting involved in open source is an option for building up experience and reputation. It means you can show people what you can do and if your work gets traction and if you contribute to somebody else's project it can be a way to meet more people in the right area.
Also programming languages and frameworks quickly go out of date, while the fundmentals like algorithms help you out no matter which language you're working in.
I liked what I first heard described as "t shaped" people when I read the Valve new starter guide [0]. That is people whose experience covers a fair amount of breadth with pockets of depth. The breadth is good because knowing a lot about what is out there helps you know where to look when you encounter new problems. Depth is also good because you don't really develop your understanding of how things are put together and what the challenges are until you get into a lot of detail. Multiple areas of depth, particularly where they are related (say knowing oo and functional style programming well) are particularly useful because what you learn in one area expands on what you learnt from the other. You can start to really understand what the design trade offs were and what works well in different situations.
There isn't one right answer though. The answer depends a lot on what you want to do. Do you want to lead a team, become an architect, go contracting, become a consultant, go into academia, join a Google, join a start up, write financial software, help cure cancer, invent new ways to do things, become an expert? There are lots of ways you can develop a career in software and whatever happens will most likely be part chance.
Don't worry about it too much, except to make sure you don't get too comfortable in a particular area. If you keep trying to challenge yourself and doing things that are interesting, you will keep getting better. Doing things that are interesting to you is important because it'll help you avoid getting too hung up on what everybody else knows and will help fuel you through the parts that are painful or tedious.
[0] http://www.valvesoftware.com/company/Valve_Handbook_LowRes.p...
We find whenever we significantly change the look of our website or our emails, conversion goes up significantly for a couple of weeks and then most the time goes back to the normal levels.
I think a difference just stimulates the brain, along the same lines of why supermarkets infuriatingly keep moving the products around so you can't just auto-pilot your shop.
I've been watching the original Thomas the tank engine with my son and was a bit surprised to notice the theme around obeying the Fat Controller's authority.
He is a mostly benevolent authority figure who helps the engines out of their scrapes, but engines that defy him or disturb the peace are punished. In an early episode he left an engine bricked up in a tunnel. Quite a few engines have also been sent away as well.
It is slightly funny to see childhood again through adult eyes but I'm not sure what I'll do when my son is old enough to understand these things. Im sure the idea of being left alone in a tunnel would have terrified me as a child. :)
Also if you look at the skin of older people from a sunny place compared to the skin of people from an overcast place, it's noticeably tougher and more wrinkled.
I'm an Australian who has lived the last ten years in the UK and my older Australian relatives definitely have older looking skin than my husband's UK-based family.
Plus the rate of skin cancer is definitely higher in Australia. It is a real public health issue there.
I agree that the subclassing idea is a particularly bad one. For starters, to subclass a class to be able to change it without changing the code is almost certainly going to break liskov's substitution principle because most likely your change is not going to be exactly functionally equivalent to whatever the class really does.
I have worked on a couple of codebases with deep and complicated inheritance trees and it has convinced me that inheritance is a bad idea for code sharing and only really helpful for times when there is a clear case for polymorphism. Mostly in those cases an interface works as well as a base class.
Still I don't think the open close principle is completely worthless. I've also seen pieces of code that tend to change a lot (not might change, but actually have changed) where new behaviour is constantly added in new if statements. Validation logic is generally a good example of this. I think in this case, being able to inject in new behaviour using an interface is much preferable to adding another branch to an if statement.
The strength of Uncle bob's advice tends to be that it's very practical and explicit, which makes it quite accessible to the people who need it most: programmers without much experience. It's kind of a pity that this advice is so wooly and that it's presented as subclassing (which is super bad advice), missing the actual good advice that code is easier to write rather than to change, which I think is true even in a system with unit tests.
I cut my teeth writing websites using PHP and MySQL, mostly around a computer game I used to play. I got a few thousand hits in the first year and plenty of nice email so I kept going with it and eventually studied software development at uni and have spent the last 15 years working as a developer.
I actually knew a heap of kids around my age (I started at around 15) who I met through my website who did the same thing and many of them also became developers or designers too.
I don't know if the web is still as accessible as it was back then when you could get free hosting somewhere like Geocities if you were just starting out, but I think HTML and javascript are a really nice starting point because it's fairly easy to cobble together something that works and you can get a fairly long way just by trying to make whatever you built just that little bit better. The web is also a good place to learn about the web, particularly since in those days it was easy to view source on anything I saw that I didn't know how to do myself.
Pair programming is supposed to be two people thinking through the problem together. It works when both people are immersed in solving the problem together.
When it works well, having two brains working together brings the benefit of different perspective and experience. It gives the opportunity to riff off each other's ideas. You spot issues with design and implementation earlier because having to communicate your ideas means working harder on them before you try to turn them into code.
I find it fun to work with someone else who is smart and engaged. It's magic when you become warmed up enough that things really start to flow. I've actually managed to get into flow before while working with someone else.
That said, it's pretty difficult to get right. I found it quite hard to let someone else see my process. If both sides aren't engaged in problem solving it can be really boring. I've also found that it takes me a while to figure out how to work productively with new people. The dynamic between any particular pair of people is a bit different. I think you need to build trust with your pair.