Roy Tang

Programmer, engineer, scientist, critic, gamer, dreamer, and kid-at-heart.

Blog Notes Photos Links Archives About

Answers I’ve written on Quora.

You can subscribe to an RSS feed of this list.

Sep 2018

  • Someone on quora asked:

    I tried out for a sports team at my school and didn’t make it. How can you still fail when you try so hard?

    There is a quote I’m fond of from Star Trek: The Next Generation, when Data (an android) loses at a game despite having what he thought was a flawless strategy. Picard tells him “It is possible to commit no mistakes and still lose. That is not a weakness. That is life.”

    Fundamentally, life isn’t fair. Just because you put in all the work doesn’t mean you are guaranteed to get what you want. It may improve your chances, but chances are just that - chances. Sometimes other people simply work harder than you. Or maybe they have more advantages. Or maybe you got unlucky and the judges were having a bad day. There are a million other factors that could have affected the outcome other than how hard you worked.

    But don’t be discouraged! Hard work is still important, much more so than talent. Because hard work and practice and muscle memory will push you past unfamiliar situations that talent cannot. And hard work overall contributes to improving your chances.

    Want to improve your chances even more? There’s two things:

    • Learn from your mistakes. Figure out where you went wrong last time, and apply that to succeeding attempts. This increases the chance that life will go your way next time!
    • Make more attempts. Try and try until you succeed. The laws of probability state that flipping a coin once only has a 50% chance of coming up heads, but flipping a coin twice gives you a 75% chance of heads, flipping three times ups the odds to 87.5%. The more attempts you make, the greater your odds of getting there. Combined with learning from your mistakes, this is the easiest path to success.

    Posted by under notes at #answers
    Also on: quora / 0

Feb 2018

  • Someone on quora asked:

    Can one become a “software savant” mid-career, where they become brilliant after years of experience, or are the best of the best always superior from the start?

    I don’t believe there’s such a state as “software savant” where you click a switch and you’re suddenly this perfect all-knowing super brilliant guru. I think software development (like many careers) is a continuous journey of self-improvement.

    What differentiates better developers isn’t being brilliant or some advantage that makes them “superior” from the start. It’s the attitude of knowing how to apply experience from past mistakes, knowing not to let ego drive your decisions, knowing that you need to approach problems systematically, knowing how to communicate well with your peers etc. None of these are inherently out of reach of anyone.

    Years of experience gives you exactly that - experience. The experience by itself is meaningless if you don’t learn from it and apply that learning properly.

    Posted by under notes at #answers
    Also on: quora / 0

Dec 2017

Mar 2017

  • Someone on quora asked:

    How do I get over the fact that people might betray you suddenly?

    Try this: at the end of every day, count how many people didn’t betray you that day. Not only friends or family, but also people like:

    • the uber driver who got you to your destination on time and didnt kidnap you
    • the cashier at the grocery who didnt try to short-change you so she could pocket some extra cash
    • the pizza delivery guy who didnt try to break int your house
    • etc

    Ok, there’s a chance that this exercise might actually make you more paranoid lol. But the point of it is to realize that people implicitly trust each other every day, even strangers. Society is held together by the simple fact that most of the time people aren’t looking out to betray other people (they have their own problems to worry about). Sure there’s always the possibility that your best friend of 10 years suddenly decides to sell you out somehow, but there’s also a possibility of a meteor crashing into your house tomorrow. Worrying about such things is pointless. It’s okay to maintain a healthy level of skepticism about other people’s intentions, but most of the time everybody is else is too busy trying to get by.

    Posted by under notes at #answers
    Also on: quora / 0

Jan 2017

  • Someone on quora asked:

    When I work on a new software project using unfamiliar technologies, it’s extremely difficult to get start, what should I do?

    The activity of building software is fundamentally about breaking things down into smaller tasks until they are small enough for you to write them in code. Look at your entire system. Study your requirements. Figure out the steps that have to be executed, the things that the system needs to do. Then iterate on each step and break it down further until you feel that you understand it well enough to implement it.

    I find it’s often easy to follow the flow of data as it travels through your system. (Your mileage may vary - or maybe you favor a different approach.) Don’t think about analyzing millions of emails. Think about analyzing one email. Where does it come in? Where is it stored? How does the system process it? Where is the processed data stored? Where is it sent to afterwards.

    If you still find yourself struggling to move forward, try building a prototype. Just a small proof-of-concept. Implement a small part first. Maybe get the email from somewhere? Don’t worry about authentication or security or anything, just get that data flowing from one end to the next. You’ll discover things you hadn’t considered and you’ll learn some things you did right and some things you did wrong.

    Then prototype the next step.

    Now you have two prototypes. Link them together. Integrate them. Then prototype the next step. And the next.

    Now you have all these prototypes linked together and moving data and processing it from end to end.

    Throw out all the prototypes.

    Go over the lessons learned and do another iteration.

    Repeat until satisfied.

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    My old coworkers keep calling me everyday. I got a new job and left due to the stress. What should I do?

    Tell them. “Hey you know, I really enjoy our chats, but to be honest I don’t really want to talk about the old job anymore. That part of my life is done, you know? I don’t want to think about it anymore and move on professionally. So I’d appreciate if we keep work out of our chats, I’m sure you’ll understand, right?”

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    How can I deal with problem of choice? I find it extremely difficult to make choices for myself in all aspect?

    If you’re having trouble choosing between some options, that means they are mostly within an acceptable range for you (if any of the options was flat out unacceptable you would have rejected them on the spot). In that case, just choose one at random (literally roll a dice if you can’t decide) and go. If it turns out later that it wasn’t the best choice, figure out if there was any information that would have helped you, take note of it for next time.

    I realize just saying it doesn’t mean it will be easy for you. It won’t. But just practice until you get better at it. Next time you’re making a choice, just choose one option at random or whatever your heart says you want or whatever. Some choices will be good and some will be bad, but that’s true whether you overthink or not.

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    Why are there some genius like Carlos Matias La Borde who can learn programming easily while I have lots of time and still sucks at algorithms?

    Sometimes simply putting in time and effort may not be enough. You have to make sure your time and effort are being spent wisely. This can only be done by thinking and analysing your own learning process. Think about how you are studying algorithms and try to figure out why you are having difficulty remembering or learning. Try to identify specific problems you have instead of a general “I am really weak”.

    Algorithms are primarily a function of problem solving skill and the ability to break down a problem into a series of logical steps. When studying algorithms, make sure you’re not just doing rote memorization of the steps involved - instead try to get a basic understanding of why those steps work. Compare the algorithm to how you would solve the problem manually, using only your human brain. Think about it from different angles.

    Since you said you have already put much time I assume that you have already implemented those algorithms you are studying, as in you wrote the code yourself and you understand what each line does and you can step through the code as it executes and see where the program flows. If not, that’s something you should definitely be doing.

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    How important is being able to teach/mentor in software development?

    If I were looking at a resume that had a TA/mentoring position on it, what it would tell me is not only that the applicant knows enough to be able to help other developers but also that the applicant has at least some skill in communicating his ideas to other developers, particularly to ones that may be less experienced.

    The ability for software developers to communicate well is seldom mentioned in job ads or whatnot, but I would consider it a vital skill especially as team and project sizes scale up. Obviously not everyone who evaluates a resume may consider this important, but it probably wouldn’t hurt to put it there.

    Posted by under notes at #answers
    Also on: quora / 0

Oct 2016

  • Someone on quora asked:

    Why do software engineer need Finance domain knowledge to work in Finance Or Bank?

    You don’t, not necessarily. But it helps. Same as any other domain knowledge actually, not specifically for financials. Having domain knowledge means the developer can contribute more to the software development process - he can help spot inconsistencies in the design, he will have less chances of misunderstanding the requirements, he can optimize for known scenarios, etc

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    Does hard work really lead to success even after so many rejections?

    There are rarely any guarantees in life. Heck, there isn’t even a guarantee that you’ll wake up tomorrow morning. That being said, hard work is more likely to lead to success than not working hard, but still no guarantees

    You feel frustrated because your chosen path is not working out, that’s a very common thing. But what if success for you is not what you expected, or you need to get there through a different route than you imagined? Working smart is much more valuable than working hard. And working smart means being willing to think outside the box and explore different options to achieve your goals. Instead of trying the same things or the same approaches again and again which are not bearing fruit, see if there are other alternatives for you. Maybe your classmates can give you some advice, or maybe your school offers some sort of counseling service to help you with your career goals

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    Do you ever feel like you put on a mask when going out and socializing?

    There’s a saying (I first encountered a version of it in the novel Shogun): “The Japanese say you have three faces. The first face, you show to the world. The second face, you show to your close friends, and your family. The third face, you never show anyone. It is the truest reflection of who you are.”

    It’s a simplification, and it doesn’t apply only to the Japanese. People choose how to present themselves to different audiences. This is because no matter how self-confident we are, on some level we still crave other people’s approval, so we tailor how we present ourselves depending on what we perceive the audience we face will approve of.

    Posted by under notes at #answers
    Also on: quora / 0

Aug 2016

  • Someone on quora asked:

    Should I work only on project support?

    For large products, support and administration can indeed pretty much grow to be a full-time job. It can be a viable option for you if you are interested in the burgeoning Dev Ops field.

    However if you have concerns with how this affects your career or how it will take you in a different direction that you want, it’s a good idea to discuss this directly with your manager. Just say that you are willing to help with the support tasks, but you would still like to have some coding work as well. Ask if perhaps the support work could be split with another willing developer, or could it be a temporary assignment while they look for someone else to help?

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    How much of what we learn in school helps us in real life?

    The stuff school teaches you - literature, mathematics, art, history, science, and so on - are intended to give you a broad enough base from which you can freely choose the direction you want to go in life. This means that as you specialize, many of these subjects may become “irrelevant” to you, but having this broad base of knowledge gives you a better foundation in life. Knowledge from unrelated fields can often give useful insight to your own specialized field.

    That being said, the most useful stuff you learn from school isn’t the stuff that’s in the lectures or in the textbooks. The most important things you learn from school are in the methods of learning and working well with others. School teaches how to apply yourself, how to study and pick up new material, how to listen to other people, how to determine which knowledge is useful to learn, how to discern truth from fiction, how to work within a set of rules, how to manage your time, how to deal with schedules and deadlines, how to work well with other people, how to deal with difficult people, and so on. In short, the most important lesson school teaches you is how to deal with the real world.

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    Is it really good to treat people good all the time?

    It’s untrue that most people see kindness and forgiveness as a weakness. It probably depends on where you live, but I think in general the opposite is true. People would see it as a virtue and wish they could be as kind. It may not seem as such to you because generally unkind people are a lot louder and more visible.

    Being good to other people is not only beneficial for the people you are good to, but it is beneficial for you yourself as well, since it encourages you to have a positive outlook in life and grows your soul. It helps you make connections to other human beings. Even if being kind to another people only had a 10% chance of giving you a positive connection to another person, that is still miles better than the 0% chance that being unkind would.

    Being good to other people is also beneficial to society as a whole, because we are able to accomplish much more working together than being apart. Imagine a society where everyone was uncaring for other people vs a society where everyone is kind. The second society would be more prone to cooperation and connections being built and have a greater sense of community, which means that more “greater good” can be achieved.

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    How can you survive life without a will to work hard?

    Well, the obvious answer is to develop the will to work hard. But let’s assume that’s not something you’re interested in (and maybe that’s fine)

    A better answer would be to work smart, not hard. Focus on being efficient. You should look for ways to accomplish your goals with the least amount of work. This shouldn’t mean doing illegal things or breaking the law though. It means being able to think outside the box to find solutions that may not be immediately obvious but are more efficient and will require less work.

    Posted by under notes at #answers
    Also on: quora / 0

Jul 2016

  • Someone on quora asked:

    If you know you want to impact the world in some way, but you don’t know where you want your impact to be made, how do you decide?

    You search for it. You try different things, until you find that place where you’re most comfortable and can do as much as you can without sacrificing your own happiness. You might find the right place, you might not, but for sure along the way you will grow as a person and gain valuable insight and probably help a few lives along the way

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    How did you know what you want to do with your life, career wise?

    Often it’s just luck. But not everybody is lucky enough to find something that interests them and they are able to make it into a viable career. That being said, there is no reason to ever stop looking for something better.

    You say you are not doing anything that you like. So I guess this means you know what you do like, right? Start exploring options that revolve more around activities you like. Join hobby groups related to your interests. Meet new people who work in related fields. Ask them how they got started. Read about different work opportunities related to your interests. See how viable they would be for you, etc.

    If you don’t know what you like, just try a lot of different things until you find something that interests you. Even if interests you just a little, it may lead to something else which is even more interesting that you could turn into a career.

    You don’t have to settle for what you have now if you’re not satisfied. There is a lot of life to explore, somewhere out there is the right path for you

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    I recently got an offer from Twitter. Should I join?

    It really depends on where you are now and your goals and what better offers you have. If your choices are between Twitter and some smaller startup or regular software shop, I’d say it’s unquestionably yes, accept the offer. If it’s between Twitter and Microsoft/Google/Amazon or such, then you need to seriously consider the pros and cons of each one

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    What are the pros and cons of making your career in programming?

    Pros:

    • It is a very rewarding career financially. Software development often ranks in the top 10 highest-earning careers in most countries
    • There is a lot of scope - you could be developing web applications, mobile applications, embedded applications, client-side, server-side, data analysis, artificial intelligence, games, etc
    • It is very difficult to be bored. You can always automate away the boring stuff. Different projects always present different challenges. The field is evolving rapidly so there are always new things to learn.
    • It is both a creative endeavor and a technical endeavor
    • Lots of opportunities for remote work/working from home, if that is your thing
    • You get to work with a lot of smart people
    • Access to a worldwide community of people who think in a similar manner. Most beginner and intermediate problems easily solved through the internet
    • Generally, working in a programming company is more likely to be a meritocracy - people with better technical skill are more likely to be valued
    • There are a lot of opportunities - if you are unhappy where you are, you can easily look for another opportunity

    Cons:

    • It is not for everybody. It requires a certain type of thinking that you may or may not be used to. Typically the field needs the ability to think logically and incrementally (step-by-step through how things happen) and to understand how multiple components work and interact together. More advanced challenges will also require significant out of the box thinking
    • After some time, you will tend to interpret things more literally. This is a side effect of working with computer programs that may affect your social interactions
    • Many people outside of the field will often find it difficult to understand the amount of work that goes into a computer program. This can lead to difficult conversations, especially with clients
    • Your nonprogrammer friends and relatives will often ask you for technical help, even though you know nothing about their printer and will most likely just google the information
    • Typically, the industry is very bad at estimation and scheduling, leading to a lot of overtime and the corresponding stress
    • The field is evolving rapidly, so there is often a need for a career programmer to self-educate to remain up-to-date with current trends
    • Encountering a highly difficult problem that no one else has been able to solve may drive you insane

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    I’m 23 and I am really tempted to die. Why is that a bad thing?

    Your life may be a struggle now, but there is no way to know what it will be in the future. You don’t know that it will always be a struggle. You don’t know that it will always be difficult.

    For all you know, tomorrow you may talk to a stranger and turn his life around.

    Or maybe you accidentally make a new friend who makes life easier.

    Or maybe you fall into a new hobby that makes you excited for every new day.

    Or maybe your story affects other people in ways you don’t expect.

    Or maybe you answer a question on the internet and manage to stop someone from killing herself.

    Death brings certainty. There is no meaning to it, it is simply an end. There is no chance for a do-over, you don’t get to try something else, you don’t get to have a sequel. It is simply the end.

    Life is uncertainty. Uncertainty means there is always hope - hope for a brighter tomorrow, hope for change, hope that things will turn around. That means there is always a chance to tell a different story, a chance to be someone else, a chance to find your own purpose and to make your life meaningful.

    The point of life is whatever you decide it to be. If it feels pointless, that’s because you haven’t decided yet on what the point is. And that’s fine, it doesn’t always come easily. Sometimes you find a point to life and later on it changes, that’s fine too. But if you die, you never get to find out what that point is.

    Who are you to decide that your life is pointless? How much of life have you lived? How many places have you visited? How many cultures have you experienced? How many people from different walks of life have you had serious conversations with? How many people are there, worse off than you, yet still struggling hard to give their lives purpose and meaning? There is a lot of life to explore, you only need to be willing.

    Lastly, if you are struggling with thoughts like these, it may seriously be a sign of depression. Please get in touch with a professional who can help you with these thoughts, and certainly don’t do anything drastic

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    How can I be an SQL expert?

    The same way you become an expert in any other field - study, practice, and learn from experience. Study SQL. Work in a job that involves writing a lot of SQL. Write complicated reports and queries. Optimize your queries. Study how other people write complicated queries. Mastery comes with time and practice

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    How can I stop shoplifting?

    Well, people might say simply don’t do it. But for some people it might not be that straightforward. Maybe you’re bad at impulse control or something. But regardless you have to take responsibility for it, and get it into your head that you have to stop

    Train yourself not to shoplift. When you go to a store, keep repeating it in your head (“I won’t steal anything. I won’t steal anything. I won’t steal anything.”). If that’s not sufficient, get someone to come with you to the store, someone who won’t tolerate you shoplifting. In fact, tell your family and friends about your problem and tell them all to keep an eye on you.

    Don’t make it easy for yourself. If you really have to go to the store and don’t have anyone who can go and keep watch over you, don’t bring a bag, don’t wear baggy clothes or clothes with large pockets. Make it difficult to shoplift.

    Humans are weak so despite our best efforts we sometimes slip back into poor habits. If you shoplift again, go back to the store and ask to talk to the manager and explain to him that you’re sorry and want to give the item back or pay for it. Or just tell the cashier “last time I was here, I accidentally walked out with a [thing] without paying for it, can I just pay for it now?”

    Also, raise your standards. Develop a sense of honesty and integrity. Make it an important part of your character and your daily life. Do not tolerate stealing or dishonesty elsewhere in your life or with other people you know.

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    What is a good way to measure how good a software engineer is?

    Evaluation of programmer performance is notoriously hard. There are no good, objective, universally accepted standard metrics.

    It follows from the fact that there are no good, objective, universally accepted standard metrics for program size. Typically each programmer in a team will not be doing the same task or even the same type of task, so in order to produce fair evaluations you will need some standard metric of program size to normalize any evaluation. For example, you could choose to use code quality (bugs) as a metric for programmer performance, but not every programmer is assigned to do the same complexity of programs and some modules may be more poorly designed than others resulting in more bugs.

    Lines of code is nice, until you realize that more lines of code does not necessarily mean a larger program or system, it may just mean your programmers don’t write particularly concise code. Often, different programmers will write the same program with different lines of code equally well. There are other possible metrics, but they all have different flaws and none of them capture the complexities of program size particularly well. Function points for example are meant to determine program size based on functional complexity but does not take into account technical complexity. Agile teams will often used a fuzzy metric called story points formed by team consensus but these are notoriously inaccurate and may change in relative size from sprint to sprint and definitely change in relative size across teams.

    What complicates things even more is that even the best, most senior programmers can slip into poor program quality due to schedule pressure, unreasonable clients or requirements, and so on.

    What I would suggest (and probably is unavoidable) is instead a more subjective approach, combining multiple heuristics to get as fair an evaluation as possible. I would suggest something like the following combination:

    • Have the programmer define his own goals/targets for the evaluation period. At the end of the period, go over the goals with him and discuss how closely he came to meeting them. These may be quantitative targets or qualitative (“I feel like my code has been of reasonably good quality”). You can compare against the other feedback in this list if there’s any disagreement
    • Get feedback from a technical perspective from a mentor or senior developer who has worked closely with the programmer. The feedback can answer some simple questions like “Is his technical skill adequate?”, “Can he be assigned more complex functions?”, “Has he been assigned the appropriate amount of work?”, ““Has he created any problems that someone of his skill level should not be expected to do?”, “How has he contributed to the overall team?”, etc.
    • Get feedback from other people he has worked with. For people who haven’t worked that closely with him, the feedback will be leaning more towards soft skills rather than technical, i.e. how well he works with other people, how manageable he is, how helpful he is, and so on.

    All of the above are subjective, but in combination should give you a relatively good picture of how well the programmer is performing relative to his peers. You can combine it with whatever corporate-sanctioned metrics you need as well.

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    How do I prevent our finance accounts to be seen by programmers?

    Developers will generally have access to code, not data. They will implement, test, and debug the system using dummy/test data and not actual live data. I worked in an environment of offshore development where the actual client management was done by our colleagues in another country and the development team had no access to their data at all. It was often a pain especially when the software passes all our tests but new problems emerge once deployed to the client since their data may contain cases not expected by the system.

    Some developers may have occasion to access the data, especially those involved in the deployment operations or live-site maintenance and debugging. There is no preventing such developers from having access as it is necessary for their work. Most companies will attempt to have some sort of legal and/or informal agreement requiring the developer to agree to keep confidential information confidential before they can be assigned such responsibilities.

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    As a programmer, are you committing intellectual property theft by abstracting ideas learned at work into a SaaS product?

    In my opinion there is no issue here. Your technical and domain knowledge are not subject to anyone’s intellectual property and you are thus free to use it as you see fit. Anyone attempting to impose such limitations would probably be in an uphill battle legally. The exception would be highly-specific algorithms used by a company as a trade secret, like for example if you wrote software for a stock brokerage firm with a unique algorithm for picking stocks.

    Your specific example is even less likely to have problems as online ordering systems are very commonplace and will generally work more or less the same wherever it is implemented/used

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    I asked my boss for a day’s leave, its my nephew’s birthday, I dont want to miss it but he said no. Is this what life is? Is it just obligation?

    During the twelve years I worked at my previous company, I had never had a leave request denied. Not because my managers are particularly strict or lenient, but because I prefer to take into account the situation at work before applying for a leave. If we are in a critical period where we can scarcely afford a person taking a day off, I’m not going to ask for a leave. Or if I really have to, I’m going to try to arrange to make contingency plans, i.e. see if someone can cover my responsibilities while I’m away, or see if some targets or schedules can be adjusted to accommodate my leave. As an employee, it is part of your obligation to take non-emergency leaves responsibly.

    That being said, life is not all obligation. You are not banned from just not going to work that day. Of course there may be consequences. You may lose a day’s pay. It may reflect poorly on your evaluation as an employee. It is up to you to weigh those consequences against your desire to attend your nephew’s birthday. If you decide that you can’t take those consequences even to attend your nephew’s birthday, then you have already made a decision as to how to prioritize obligation versus your personal desires. That is what life is - a series of decisions of prioritization.

    Of course, the above assumes that your employer is reasonable and is willing to let you take a day’s leave if the workload can accommodate it. If your employer is the sort that like to be unreasonable and keep you around just to squeeze more work from you, then you might have bigger problems than just leaves, and you might want to consider looking for employment elsewhere.

    One other thing: if your employer is unreasonable about this sort of thing, but you decide to stay anyway, next time don’t bother giving him a detailed reason for your leave request. Just say you have personal matters to attend to. Or if you feel exceptionally sneaky, just pretend to be sick on that day, or pretend to have an emergency - weigh your personal ethics if it is acceptable to you to deceive your employer in this manner, if your employer is not particularly reasonable you may be able to justify it to yourself

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    How can you prepare for a completely fresh start in life?

    You will need to consider several things. First, to ensure survival:

    • where will you live? How much will it cost?
    • what is the average cost of daily living where you plan to go?
    • will you be able to find a job that pays a sufficient wage?

    You will need to brace yourself, more likely than not you will be encountering difficulties that you have not encountered before. You may need to accept work beneath your skill level (largely depends on your situation). You may need to power through some difficult times before you manage to settle in and be in a good place

    good luck!

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    Is it a bad thing to feel shame for using 21st century tools to better my life?

    Why would you be ashamed? These are the times we live in, so you use the tools that are available. Should cavemen have been ashamed for using fire? Should pilots be ashamed for flying airplanes? Should we be ashamed for answering questions over the internet?

    It seems like a silly thing to feel shame over. It benefits no one to have such an attitude, so I would suggest setting it aside.

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    Are there books that can guide me step by step on how to become a software developer?

    Not really.

    “Becoming a software developer” is a very wide scope, there are a lot of different types of software developers who do different kinds of things. It’s kind of like expecting there to be a single book that will help you become a lawyer or a doctor, it’s not the sort of thing that really happens. You also need to decide what kind of software development work you would be interested in doing, and if you have no idea at the onset, then it’s the kind of decision that requires you to try out a bunch of different things to see which one you prefer more

    It’s kind of like asking “what programming language should I learn?”, there is no correct answer that will be sufficient for all purposes - you need to know what it is you plan to do, and even then there won’t be one correct answer all the time

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    Will Web Development still be a viable career in 30 Years?

    Unlikely.

    Thirty years ago, the concept of web development did not even exist. Technology marches forward at an even faster pace now. In the next thirty years it is very likely that there will be new mediums of communication that become more popular and overtake the web in use

    That is not to say that skills in web development will become useless in thirty years, it’s just that it’s likely that those skills will need to be adapted to whatever new technologies emerge. This is always true of programming in general - one needs to be familiar with the changing technology landscape to keep yourself up-to-date

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    What I should do when I am feeling less energetic?

    Start an exercise regimen. It doesn’t have to be anything complicated, just something that gets you moving is fine. Like, walking around your neighborhood for 30 mins to an hour. Do it at the same time every day too, to make it easier to become a habit. Just moving around a bit will train your body to give you more energy during the day.

    Don’t skip breakfast. Skipping breakfast gives you less energy throughout the day.

    Look for new hobbies, especially ones that have you do something on a regular basis. Don’t be afraid to try a bunch of stuff and just discard anything that doesn’t stick.

    Spending some time doing nothing is fine in moderation though

    Posted by under notes at #answers
    Also on: quora / 0

Jun 2016

  • Someone on quora asked:

    How do I deal with the fact that I failed my year?

    During my the first semester of my second year in University, I failed four out of five classes I was taking due to slacking off a lot. Those same classes were only available during the first semester of each year, which meant I could not retake them during the second semester or over the summer to catch up. So effectively, I had fallen one year behind everyone I knew.

    When I got the news, it was devastating. Up until that time I had always been a pretty good student and I felt like I had always made my parents proud and happy. I did not know how I would tell them about it, I felt that I had failed them utterly. I knew I only had myself to blame as I had let most of these classes go by without paying much attention to them. Sometimes when you’re used to doing well academically all the time you might get lax and feel complacent and then you’re surprised to find out there’s a lot you haven’t picked up but it’s too late to catch up.

    My parents were very understanding. My friends did not make fun of me or anything like that. I decided to take the failure for what it was - a failure - and simply learn from my mistakes and move on. I had to toughen up. I accepted that I would not be graduating on time, and that it was my own fault. I spent a semester under academic probation, but from that point onwards I did not fail any other classes, and I successfully graduated some years later, got a good job and so on.

    Failure is a setback yes, but it’s a setback you can learn from and that you can recover from. Failure is not fatal (most of the time), and as long as you can find a way to move forward there is no reason you would not be able to surpass it. In time you will look back on your failures as struggles that you learned from and made you stronger and more resilient

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    If you lost everything and had to start over from scratch, how would you do it?

    Even if I lost everything today, I’d still have my own confidence and skill sets to fall back on. So I’d probably still be able to find a job, maybe even freelance or something. If I need housing, I’d probably look for a friend to put me up temporarily while I look for a place. I’m very low maintenance so I can survive on a small amount of resources until I can save up

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    Can I create a moderately simple back-end for the application / web site without knowing programming?

    It depends on what you mean by “moderately simple” and “without knowing programming”. If you only need to be build a simple CRUD website with no special logic of any sort, some frameworks such as RoR or Django have code generators that can automate all of that for you, but you have to provide the data structure first, which you’ll need to write in code, so it involves a “little” programming. If even that is too much for you, you can build some simple forms using online tools similar to Google Forms to capture input from users.

    Anything more complicated than simple forms to capture data will probably require programming

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    Why don’t computer programs determine whether a potential criminal is guilty or not?

    Seriously? Determination of guilt or innocence isn’t a purely computational matter. There are no algorithms that can compute guilt. Adding to the complication are varying intricacies of law in different jurisdictions. If humans don’t know how to get it right, then we can’t program computers to do so either.

    Arguably, we could build programs that learn to make such judgments, but in order for such programs to work we would need more data to train them. A lot of data, given the impossibly large number of possible ways that a crime can be committed. Way, way more data than we have criminal cases worldwide. We are probably two or three generations away from such a thing being even conceivably possible.

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    I can’t seem to focus and remain passionate and stick to a single career or field.How do I find my passion in terms of work and live a happy life?

    Despite what many might say, people can change. That is, people’s interests and passions can change. It’s not right or wrong, it’s just being human. The key is to keep living your life proactively. If you feel like the passion in your work is waning, think of what used to excite you about it and see if you can recapture that excitement. Or try to identify whether the problem is with the work you’re doing or the company you’re working for. Perhaps working for a different company or in a different environment might reingite the spark. Explore your options.

    At the same time, explore your options in other areas as well. It’s good that you tried taking courses about something, but if you find it doesn’t hold your interest very well, don’t be afraid to try other things. Be open to new opportunities or new areas to expand your character or your interests.

    Living life is pretty much a game of exploration. You try things out and see if they make you happy, then you keep doing those that make you happy until they don’t. Then either you try to make it better or you search for other things to make you happy.

    Good luck!

    Posted by under notes at #answers
    Also on: quora / 0
  • Someone on quora asked:

    Have you ever made something that you ultimately regret making? Why?

    I thought about answering this with some of the products I helped develop in the past, but as I was writing it I realized that “regret” was the wrong word to choose. There were a lot of mistakes made during design and implementation that ultimately led to the failure of those products, and I suppose the company might regret spending time and effort and money on those products, but for me personally I learned a lot from them, especially on what kind of mistakes to avoid in the future

    I think the only way I could say I regret making a product would be if it were something that ultimately turned out to be harmful to other people, i.e. something that might have caused injury or harm

    Posted by under notes at #answers
    Also on: quora / 0