Reddit mentions: The best books

We found 719,500 Reddit comments discussing the best books. We ran sentiment analysis on each of these comments to determine how redditors feel about different products. We found 224,006 products and ranked them based on the amount of positive reactions they received. Here are the top 20.

2. Clean Code: A Handbook of Agile Software Craftsmanship

  • Prentice Hall
Clean Code: A Handbook of Agile Software Craftsmanship
Height9.2 Inches
Length7 Inches
Number of items1
Release dateAugust 2008
Weight1.4550509292 Pounds
Width1.1 Inches
▼ Read Reddit mentions

3. Starting Strength: Basic Barbell Training, 3rd edition

  • Used Book in Good Condition
Starting Strength:  Basic Barbell Training, 3rd edition
Height10.98423 Inches
Length8.50392 Inches
Number of items1
Weight2.20462262 Pounds
Width0.74803 Inches
▼ Read Reddit mentions

4. Feeling Good: The New Mood Therapy

  • Journeys Out of the Body
Feeling Good: The New Mood Therapy
Height6.75 Inches
Length4.19 Inches
Number of items1
Release dateOctober 1999
Weight0.72973008722 Pounds
Width1.11 Inches
▼ Read Reddit mentions

5. Code: The Hidden Language of Computer Hardware and Software

  • Microsoft Press
Code: The Hidden Language of Computer Hardware and Software
Height8.9 Inches
Length6 Inches
Number of items1
Weight1.0361726314 Pounds
Width1 Inches
▼ Read Reddit mentions

6. Introduction to Algorithms, 3rd Edition (The MIT Press)

  • Hard Cover
Introduction to Algorithms, 3rd Edition (The MIT Press)
Height2.06 Inches
Length9.08 Inches
Number of items1
Release dateJuly 2009
Weight4.9493777819 Pounds
Width8.18 Inches
▼ Read Reddit mentions

7. C Programming Language, 2nd Edition

  • Prentice Hall
C Programming Language, 2nd Edition
Height9.2 Inches
Length6.8 Inches
Number of items1
Weight1.10231131 Pounds
Width0.7 Inches
▼ Read Reddit mentions

9. No More Mr Nice Guy: A Proven Plan for Getting What You Want in Love, Sex, and Life

  • Running Press Book Publishers
  • Ideal for a bookworm
  • It's a great choice for a book person
No More Mr Nice Guy: A Proven Plan for Getting What You Want in Love, Sex, and Life
Height9.25 Inches
Length6.3 Inches
Number of items1
Release dateJanuary 2003
Weight0.85 Pounds
Width1 Inches
▼ Read Reddit mentions

10. Design Patterns: Elements of Reusable Object-Oriented Software

  • Great product!
Design Patterns: Elements of Reusable Object-Oriented Software
Height1.04 Inches
Length9.31 Inches
Number of items1
Weight1.9510910187 Pounds
Width7.62 Inches
▼ Read Reddit mentions

11. The Intelligent Investor: The Definitive Book on Value Investing. A Book of Practical Counsel (Revised Edition)

  • HarperBusiness
  • It comes with proper packaging
  • Easy to read text
The Intelligent Investor: The Definitive Book on Value Investing. A Book of Practical Counsel (Revised Edition)
Height8 Inches
Length5.3125 Inches
Number of items1
Release dateFebruary 2006
Weight1.00089866948 Pounds
Width1.6 Inches
▼ Read Reddit mentions

12. Code Complete: A Practical Handbook of Software Construction, Second Edition

  • Microsoft Press
Code Complete: A Practical Handbook of Software Construction, Second Edition
Height9.125 Inches
Length7.5 Inches
Number of items1
Weight3.3510263824 Pounds
Width1.625 Inches
▼ Read Reddit mentions

14. The Power of Habit: Why We Do What We Do in Life and Business

  • Random House Trade
The Power of Habit: Why We Do What We Do in Life and Business
Height7.98 inches
Length5.24 inches
Number of items1
Release dateJanuary 2014
Weight0.65 Pounds
Width0.97 inches
▼ Read Reddit mentions

15. JavaScript: The Good Parts

  • O Reilly Media
JavaScript: The Good Parts
Height9.19 Inches
Length7 Inches
Number of items1
Weight0.64 Pounds
Width0.38 Inches
▼ Read Reddit mentions

16. Allen Carr's Easy Way To Stop Smoking

  • Clarity Marketing
Allen Carr's Easy Way To Stop Smoking
Height8.9 Inches
Length6 Inches
Number of items1
Release dateNovember 2011
Weight0.8 Pounds
Width0.5 Inches
▼ Read Reddit mentions

18. She Comes First: The Thinking Man's Guide to Pleasuring a Woman (Kerner)

  • William Morrow Paperbacks
She Comes First: The Thinking Man's Guide to Pleasuring a Woman (Kerner)
Height8.25 Inches
Length5.5 Inches
Number of items1
Release dateJanuary 2010
Weight0.6 Pounds
Width0.53 Inches
▼ Read Reddit mentions

19. Cracking the Coding Interview: 189 Programming Questions and Solutions

  • Careercup, Easy To Read
  • Condition : Good
  • Compact for travelling
Cracking the Coding Interview: 189 Programming Questions and Solutions
Height10 Inches
Length7 Inches
Number of items1
Release dateJuly 2015
Weight2.69 Pounds
Width1.59 Inches
▼ Read Reddit mentions

20. Drawing on the Right Side of the Brain: The Definitive, 4th Edition

  • Drawing on the Right Side of the Brain, 4th Edition - Paperback
Drawing on the Right Side of the Brain: The Definitive, 4th Edition
Height9 Inches
Length7.3 Inches
Number of items1
Release dateApril 2012
Weight1.38 Pounds
Width0.76 Inches
▼ Read Reddit mentions

🎓 Reddit experts on books

The comments and opinions expressed on this page are written exclusively by redditors. To provide you with the most relevant data, we sourced opinions from the most knowledgeable Reddit users based the total number of upvotes and downvotes received across comments on subreddits where books are discussed. For your reference and for the sake of transparency, here are the specialists whose opinions mattered the most in our ranking.
Total score: 91,003
Number of comments: 22,696
Relevant subreddits: 8
Total score: 8,986
Number of comments: 2,888
Relevant subreddits: 8
Total score: 6,838
Number of comments: 745
Relevant subreddits: 17
Total score: 5,114
Number of comments: 1,400
Relevant subreddits: 10
Total score: 3,793
Number of comments: 1,046
Relevant subreddits: 7
Total score: 2,876
Number of comments: 1,574
Relevant subreddits: 12
Total score: 2,813
Number of comments: 811
Relevant subreddits: 6
Total score: 2,487
Number of comments: 957
Relevant subreddits: 45
Total score: 1,705
Number of comments: 928
Relevant subreddits: 19
Total score: 1,457
Number of comments: 1,421
Relevant subreddits: 16

idea-bulb Interested in what Redditors like? Check out our Shuffle feature

Shuffle: random products popular on Reddit

Top Reddit comments about Books:

u/astrocyte373 · 2 pointsr/ABCDesis

I'm still learning myself. So I don't have all the answers. But I highly recommend Feeling Good by Dr Burns ( It's the No.1 best selling CBT book on depression.

It talks about dependence (love addiction) and approval addiction. Loneliness is something I've looked into a bit as well.

Love addiction

When you rely on love to be happy, you are not taking responsibility for your emotional life. The healthy mindset to have is that it would be nice to have someone love you, but it's not a need. You don't need a partner to achieve what you want and enjoy pleasurable activities.

You can love yourself through positive thinking (admiring your positive qualities everyday and how your a bit better today, accepting your flaws like a loved one would, taking good care of yourself, imagining people who have loved you in the past giving you warm feelings or even an imaginary compassionate being). Self soothing our inner child is an important skill for everyone to develop.

Changing dysfunctional attitudes like "I need love" involves a written exercise where you list the advantages and disadvantages of believing this and then re-write a healthier assumption. It's not wise to put your emotional health in something fickle. It's also unattractive to women if you're needy. It's like a downward spiral of loneliness.

I meet someone who was independent and happy, despite having no relationship experience in her late 20's and believing she would never marry. It gave me a role model to aspire to.

Also your self worth isn't based on being successful in love. Everyone has a self worth of 1 unit. It doesn't change no matter what. Even if you're unloved, you're just as worthy as someone else. Self worth is self worth. Relationship status is a different word to self worth. They're not the same thing. Your self worth is independent of looks, employment status, relationships status etc.

Aim to believe that you're a lovable, good, caring and competent person. Look for evidence that proves it, rather than character assassinating yourself and focusing on the negatives. Nobody is objectively good or bad. It's all opinion. Some people thought Charles Manson was good and worshiped him. So hold a good opinion of yourself because it's the helpful thing to do.

Close friendships

You don't need close friends to validate you as person. You decide how worthy you are. It's independent of how many close friends you have.

You're not entitled to close friendships. It's important to accept the universe owes you nothing and accept real life. In the modern world, most adults don't have that many close friends. And I think a lot of people rely on their partner.

I use my work colleagues as a source of friendship and sometimes organize once yearly socials with school mates through a whatapp group. I also never so no to a social invite. I use to be really closed off at work, because I thought people would reject me. But then I opened up and revealed my authentic weird self. Now I feel like I've built genuine friendships at work that I rely on for social support. Authenticity builds closeness. Focus on the other person in conversations. People love talking and it builds closeness when people feel you know them well and can support them.

Also spend time with family - take them out for dinner, phone calls etc. I appreciate the social support they've given me at times. Make the most out of what little social life you have and accept what people can give you. Rather than demand a level of closeness they can't deliver.

Solitary is nice too. It gives you space to recharge your batteries from work, grow and engage in hobbies.


Loneliness is natural. It's your body telling you that it wants social support and love. When it comes, be mindful of it and self soothe with kindness. Everyone experiences loneliness at some point in their life. It's a regular occurrence for me. You can't avoid suffering. It's a part of life. Make sure you take good of yourself when it comes. The only true solution to loneliness is friendship and love. As long as you are trying your best to get those things, there's nothing more you can do. Healthy distractions are a good thing during the day.

Life will get better. People will gravitate towards you, you may find love and you will become better at coping. You've just got to take every day as it comes and keep working on it.

u/erdnussmachts · 1 pointr/edefreiheit

>##Starting Strength: A Review Of Mark Rippetoe's Barbell Bible

>Starting Strength is a classic, one of the best barbell-based training books ever written. Now there's a new-and-improved edition that raises the bar even higher.

>People who want to get bigger, stronger, and more athletic frequently approach me for training advice and instruction. After all, most of us agree that "strong people are harder to kill than weak people, and more useful in general." (A little Mark Rippetoe morsel for you.)

>I wish I had time to train each of these people. I'd love to pull them into a gym, put them under a bar, and guide them through the fundamentals of resistance training. Unfortunately, this approach isn't usually possible. For most of these "help-me-get-bigger" brothers, the best thing I can do is recommend a book. Time after time, I recommend the same one: Starting Strength by Mark Rippetoe.

>###The Gym Bible

>Never heard of it? Extract yourself from the crazy claws of your favorite biceps curl machine and listen up. Starting Strength teaches you everything you need to know to properly program and perform full range of motion barbell exercises, which are the best functional expression of human skeletal and muscular anatomy under a load. Simply put, your favorite isolation exercise ain't squat compared to the squat. If you're not performing barbell compound exercises, you're not getting the most from your strength workouts.

>As Coach Rip says about the deadlift, it's more functional than almost any other exercise because "it's very hard to imagine a more useful application of strength than picking heavy up off the ground."

>The big problem with barbell training, however, is that the majority of people don't know how to do it correctly, even if they've been training for years. Because every aspect of bar movement is controlled by the lifter, barbell training requires an investment in time and education. Starting Strength addresses that issue. Luckily, readers have just been blessed with the recently released Third Edition, and it's fantastic.

>###Under The Book

>The Starting Strength program is one of the most popular programs in America, particularly in high school and college weight rooms. It also has an incredibly high rating on Amazon, having garnered 90% or more 5-star reviews.

>The only complaints with previous editions of Starting Strength were that it needed better pictures and editing. Welcome to the Third Edition. Without reinventing the wheel, it comes with a new look, new photos, excellent illustrations, and updates in the program based on the experiences of thousands of athletes in the four years since the last release.

>###Why Buy?

>If you're new to weight training, this program is one your best possible investments. Furthermore, if you have been using mainly machines or doing calisthenics, not having mastered squats, bench presses, deadlifts or cleans, then Starting Strength will set you straight. Rippetoe's instructions are simple enough for a novice to understand but detailed enough for a strength coach's arsenal.

>The program stresses the basics of effective compound exercises and weight progression with an emphasis on flawless technique. It is appropriate for anyone looking for a solid foundation in strength, muscle, and power. Starting Strength teaches you to train the body as a complete system, not a collection of parts.

>"Exercise is the stimulus that returns our bodies to the conditions for which they were designed. Humans are not physically normal in the absence of hard, physical effort. Exercise is not a thing we do to fix a problem-it is a thing we must do anyway, a thing without which there will always be problems. Exercise is substitute cave-man activity." (Rippetoe 1)

>###Precision Makes Perfect

>Starting Strength puts a very heavy emphasis on lifting correctly, with over 200 pages dedicated to mastering the five most important movements: the squat, press, bench press, clean, and deadlift. You may have thought you knew how to squat, but until Mark has taught you how bar position effects torso angle, lower body joint relationships, why your knees keep caving in, and why you shouldn't look up when squatting, you'll basically never know.

>While the squat, press, bench press, clean, and deadlift are the focus of the program, Mark does recommend ancillary exercises for certain situations. These are typically useful variations of the main lifts to emphasize weak points, as well as other movements that can be used for pre-hab or corrective exercise. Other included exercises - such as the glute ham raise, dip, and row - contribute to functional strength and movement.

>You won't see leg curls or extensions in Rip's pages, however. In the real world or on the athletic field, the hamstrings and quadriceps always function together when we move. The only place where we can purely isolate these muscles is on a machine, so why should we use this equipment? Just because someone made the machine?

>After teaching you everything you will need to know about technique for the bread-and-butter barbell movements, Rippetoe gives you the carrot with his actual program. These workouts are not long, drawn-out affairs, but are designed to stimulate a response of strength and hypertrophy as efficiently as possible. The novice would start with just the main lifts done with two training sessions, three times per week (Rippetoe 296):

>[Bilder und Ausführungen]

>Rippetoe thoroughly outlines the reasoning behind this basic program, with advice on how to warm up, selecting the work load, and how to make adjustments. He also instructs the reader how to advance the program to continue progress.

>Training begins with warm-ups. This includes the general warm-up to produce tissue warmth throughout the body, as well as exercise-specific warm-ups with an Olympic bar. The specific warm-up isn't only for dynamic stretching and tissue temperature, but is vital to mastering training technique. Skilled lifters treat their barbell movements the same way Arnold Palmer treats his golf swing - they use the submaximal weight to prime the movement pattern.

>Many beginners approach their specific warm-ups the wrong way, doing far too many reps and fatiguing themselves before the work sets take place. Starting with the bar, keep the repetitions below five and advance the weight evenly over four or five sets, decreasing the repetitions to two prior to your work sets. Using this method, your squat training would look like this:

>[Tabelle zu Wiederholungen etc.]

>###Rip Riffs On Fat

>Notable (but emphasized much less) is the infamous GOMAD nutrition program. If you're training to gain significant muscle and strength, Mark suggests that most people are far too concerned with their short-term physical appearance and thus won't eat enough. For certain populations, he recommends GOMAD, which is a "Gallon of Milk a Day" in addition to four whole-food meals (this applies to the skinny guys).

>"Make up your mind that, at least for the first year or two, you're not going to worry about body fat levels if you're already lean, because lean is easier to reacquire than strong is to build" (Rippetoe 310). Rip is also keen to note that "getting ripped" isn't as easy as it might seem: "You have seen pictures of big bodybuilders at 6% body fat in contest shape so often that you think it's normal, desirable, and always possible. " This isn't the case - getting anywhere takes work, and often takes longer than you'd first like. The iron game is one you play for life, not for a few months.

>###Sum Of Rip

>This program is so effective that we can say if your squat only goes up by fifty pounds in eight months, then you obviously weren't following the program correctly. Most people aren't trying to be the next world champion bodybuilder, but would like to have some more muscle and functional strength. Simply put, if you aren't a 3 time Mr. Olympia preparing to defend your title, you shouldn't be training like one. Starting Strength will form the basis of a successful lifting career and teach the fundamentals that will make you big, strong (scary), and keep you safe in the weight room.

>If you're getting serious about training and ready to build your best body ever, you don't need to start somewhere. You need to start here.

u/favourthebold · 766 pointsr/AskReddit

Well this seems like a good opportunity to post a few of the lessons I learned in my 20s.

To my former self:

If you're depressed, here's how to turn it around

  • Stop drinking, this is the main cause.

  • Lift weights. This alone could also stop depression. It's likely related to low testosterone levels

  • Fapping too much makes the depression worse

    Fap less, and never to porn

  • Ejaculating too often removed your motivation to take actions and start tasks. You can consider porn like a poison for the mind. Pleasurable but it desensitizes you to all other pleasures, making life seem bland and boring. Until the only thing you want is porn. It perpetuates itself.


  • Whatever you are grateful for will grow

  • Gratitude is the only way to be happy. If you think about what happiness is, it's appreciating what you have. When you think of something that would make you happy, you are imagining yourself appreciating it when you get it.


  • You can have anything you want, as long as you create enough value for others first.

  • To be wealthy, don't try and do tomorrow's work today, just have a successful day each day. If you have more successful days than unsuccessful days, your wealth will grow. As you have successful and productive days, opportunities will be attracted to you.


  • The key to success in any area is having the right theory. A small amount of work, or a massive amount of work, with the wrong theory, won't lead to success.

  • With the right theory, success will be relatively straight forward. When you do the thing, it will basically work every time. Anything that has been done many times before, can be done yourself with the correct theory

  • When most people speak of the 'years of hard work' they put in before they 'cracked the game', usually means they were laboring under the wrong theory, and then one day they found the correct theory, and when they applied it, it worked. (excluding world class athletes, talking about common things like starting a business or growing muscles)

  • Theories can be gathered by spending tens of thousands of dollars on seminars or tens of dollars on books. Both can contain theories that work and theories that don't work. Higher cost definitely does not mean they have the right theory

  • Some theories can seem like they are guaranteed to work, but on testing, actually don't. When someone says they have the right theory, it will seem worth any price. Often they actually don't. Beware. If possible buy their book and test it for yourself, it's just as good in book form.

  • This whole list is a list of theories, as you can see, they are usually quite simple and easy to understand. Complexity is usually a sign the person doesn't really know how things work


  • You cannot make a girl like you, you can however find a girl who likes you

  • They key to getting girls is to get in excellent shape (lift weights), dress well, and talk to girls until you find one that likes you

  • If a girl is unsure if she you likes you, won't go on a date with you, or doesn't let you touch her in anyway. She doesn't like you. Find one that wants all those things. Don't be fooled by girls who seem to REALLY like you but doesn't have time to meet, or won't let you touch her. They do not like you like that.

  • Hot girls are just as likely to like you as not hot girls

  • If you like a girl more than she likes you, and she doesn't want to meet up/hang out/have sex. Let her go and move on


  • It's very easy to get ahead if you just try, most people don’t

  • You career will naturally progress just through normal learning, don't worry about it


  • If you want things to happen without effort and struggle, live a life with gratitude and presence. Things will seem to happen easily and naturally.


  • Mediation gives you the ability to be your best. Very handy for improving at anything, particularly gaming, as you see more and learn more. It gives you access to creativity in solving problems and improving your performance

  • Mediation allows you to 'stop the mind'. Do this if you're stuck in over-analysis

  • To meditate, set a time on your phone for 20 minutes, sit still and don't move a muscle, and focus on your breath as often as you can. Your mind will try to stray, just focus on your breath as much as able. This is how you quiet the mind


    To answer some requests, here's my list of resources.


    This audiobook has the best summary I've found of how wealth works






    How Procrastination works:



    How Business works


    What innovation actually is and how to do it:


    How economics works:


    How to get things done:


    Task Management tool:


    Spiritual Books

  • Spiritual books won't make sense unless you've had an awakening, and you can't make this happen, it happens by chance/grace. If you have, anything by Eckhart Tolle will be amazing.

    How to be a man:



    Audiobooks (most of these can be found on audiobook):


    Frame Control (Anytime you feel like you're trying too hard or begging for something, you lost the frame)


    This is my favourite book of all. They talk about the new type of conscousness which is really really interesting to me. May not apply to all people.
    If anyone find this book interesting I'd love to talk about it:

    How the world works:



u/Im_a_shitty_Trans_Am · 2 pointsr/DnD

First off, sorry for the length. I had nothing else to do and a session tonight, so I've got a DnD itch and a lot of time. I just got carried away and enjoy writing. It's super close to the comment character limit. :/


So, how to start DnD. It's good to see how it plays. I find Critical Role to be a good place to start. The DM is Mattew Mercer, who is great and moving things along, and the players are all voice actors, so it's nice to listen to. CR is a bit unusual in how well behaved the players are, if you run the game, expect your players to be more annoying. I recommend starting with episode 14, "Shopping and Shipping" as you can pick it up easily, and everything gets a bit better at that point as the new arc starts.

It's also a good idea to figure out what system to use. 5th edition is the current one. I find it to be fairly simple on the surface, with a lot of extra detail in the supplementary books. It's very flexible in tone and complexity, and a solid foundation I expect to see a lot of extra content piled on top of, with extra classes, rules, monsters, etc, in later supplementary books. 5e is probably the best place to start.


What you need

First off, you need friends! I know it may seem cliché, but it is true. You want one person to run the game (the DM) and 3 or 4 (maybe 5, but no more if the DM is new) people to play an individual character. If you don't have enough friends to do DnD, you can probably find new friends with something called The Adventurer's League. You also need a set (or a few) of dice, which contain 6 to 7 different dice. You have a 4, 6, 8, 10, 12, and the most-used 20 sided dice. You also have a "d100"^1 which is a d10 that counts in 10s. They're a bit unusual in early play, so don't worry. Last but not least you need the rules. The basic rules can be found here. If you want the complete rules and a few extra books, I'll PM you. Chaotic Good PDFs are frowned upon here.

Finally, you need to actually play is a story and a Dungeon Master. You can get prewritten stories and adventures that give the DM a framework to build around for money, although I have the 5th ed beginner adventure somewhere on my PC. (It's really useful for a beginner DM.) The DM can also create their own, but that needs a lot of effort. The DM acts as an arbitrator. They say how difficult it is do something, what happens when it's done, what the players see when they go somewhere, etc. They also role-play NPCs, decide what actions enemies take, etc. They are less a player and more the world the players are in.


The two main roles.

The Dungeon Master (Or Mistress)

The DM is often the person that brings the party together, finds people to play DnD, and ties it all together. However, they are not the most important, as that's a bad mindset to have. A DM without players is a person having conversations in their head. It's a symbiotic thing.

Being a DM is very hard, but also by far the most rewarding role if you have the skill and motivation. Being a DM is thinking up the bagpipe gag, is creating a cool city, is roleplaying the city guards who have no time for the player's shit and the shopkeep that warmly welcomes them. It is the role with the most freedom, as you can shape the campaign however you like. (As long as you don't drive your players away.) However, you need to know a lot of the rules by heart (it's easier than it sounds) and a good dose of creativity. The scheming, toying with the players and their emotions^2 all makes it worth it in the end. This is a bit long, but if you fancy the idea of being the DM I'll make a followup "How to DM." comment.

I also fancy the role of the DM myself as it feels like I'm making a world of facades very quickly, faster than the players can notice. The NPCs are fleshed out enough to survive one session without seeming two dimensional, but are not nearly as intricate as the player's characters. Physical locations have enough detail to tide the players over while I make more. However, if the players show particular interest in a character or place, I can build behind that facade to make the thing more and more realistic the closer the players look between running sessions. I also have a lot of pre-made things I can pull up. I might have a general set of bars with different qualities and a cursory list of their stock, with different names for different locations. So if the players go to a seedy bar in a dwarven city, I pull up a seedy bar template and add dwarven flavor to it. I'll also note down any on-the-fly descriptions for later use. If the players start to go regularly, I'll add detail. I'll create regulars with personalities and stories to them, I'll create notable events in the bar's history, etc. That feeling of going from pulling things together quickly to make it seem good enough, then after the session spending hours taking slower more thought out routes to flesh something out.

The Players

This section will be a bit less meaty. The players create a character from a set of races and a set of classes (some books have extra races and classes, and you can take levels in more than one class. So instead of being a level 10 ranger, you could be a level 10 character that is a 3rd level rogue and a 7th level ranger.) They have a sheet that holds the information they need to play their character, that details weapons, spells, abilities, HP, stats, proficiency, what skills they have, etc. Often the player will write a few sentences or paragraphs on their character and their backstory.

You also have personality outlines, which consists of (normally, you can change it up for fun)

  • 2 general traits (Like, "I am new to these foreign lands, and have numerous strange but minor customs others may find confusing.")

  • An overall ideal (such as "law keeps society together, those that break it should be punished.")

  • A bond they have (like: "I'm the successor to a major title, but my family was deposed. Some day I'll regain it.") that they will either constantly work on, or be called to fulfill. (like protecting an object from attack.

  • A flaw they have. (Like "I'm quick to anger, and can hold a long grudge." This could lead to a misunderstanding creating long-term animosity between a player and an important NPC.)

    These outlines are used to help the player get in the mindset of their character, and to role-play them better. So if the player outlined above is meeting a noble, because the noble's connections could help them regain their land, and they greet them in accordance with their strange customs, the noble remarks unfavorably about them, then the player should role play not liking the noble, but they shouldn't try and attack them, because that's outside the law. Stuff like that is what makes the player characters so much more complex. Also, don't take my talking up of the DM's role to diminish the player, they can have plenty of fun.

    Also, there are many types of players, and they often not just co-exist but may even require other types to do well. Some players just want to see what happens and play DnD, whereas others seize the initiative and direct the group. A party with too many of the first will do very little, and a party with too many of the second will do nothing but bicker. Also, some players are recluse and have a hard time roleplaying their character. Other players like playing hard to role play characters, and their willingness to set themselves up for possible failure (in roleplaying) might help nervous players come out of their shell. Some players make super strong characters without thinking about story, and others make weaker ones because all they think about is story. The strong characters will help the party in combat, the story characters will help the drama aspect of DnD that makes it so engaging. Some pay tons of attention, and can fill in those that don't. And so on. Together, you can get one functioning party!


    Buying things!

  1. The starter set is great. It has rerolled character sheets, the basic rules, and an adventure that holds the hand of the DM more than others, but also provides plenty of room for growth. Also, it's not even 15 bucks on Amazon.

  2. Dice. The starter set ones mysteriously all seem to be cursed to roll low, so new dice are good. Chessex looks good and is cheap, and Q-workshop are expensive but amazing.

  3. Dungeon master's screen. Hides notes & rolls, looks nice, and has a quick-lookup of stuff on the back. About 10 bucks, I highly recommend it.



    ^1 Dice are referred to as d[number of sides.] So a 20-sided one is a d20, and so on. If multiple dice need to be rolled, like with a Greatsword, it's shown as 2d6 + [modifier], where you roll 2 six-sided dice, add that together, then add a fixed modifier. The rules have more detail.

    ^2 Randomly rolling dice to make them nervous, evily grinning when the players ask something even if the thing is absolutely fine, having that little smile when the players ask if those bagpipes are silent or not, asking the players if they're totally sure if they want to do something then making them live with the consequences are all ways to mess with them.

u/TheRealCalculon · 54 pointsr/AskReddit

Woah dude. First you need to step back and do some reassessment of things in your life. It's possible you have some sort of clinical depression and if so, go to the doctor and work on it. Whether it's just talking through things or some medicine-- there's no shame in getting better, or having been sad, in the past, because we're leaving this behind us.

First we have to assess what your perceived problems are. Nothing wrong with having problems, only in not solving those problems. Fat-- there's a diet for that. Weak-- there's a workout for that. Ugly-- well you can't change your facial symmetry much but you can work on your style and haircut, your grooming. Poor-- there's capitalism for that. Family life not great-- well, you can't change who they are but you can change how you interact with them, you can take note of issues and learn how to make things better for your family one day.

Now, onto this female quagmire we seem to be sinking in. I've been exactly where you are, it lasted for about the time from maybe 8th grade to about when I was in 10th or 11th over one girl. Guess what-- it wasn't worth feeling like shit all the time. She wasn't worth my feeling like shit. No one is. She's a fine person but I mean, she's married to some creepy band director with a soul patch who's 12 years older than her while I'm clearly awesome now.

You seem to be going about this backwards. First, love really needs to be a mutual understanding between two parties for it to be love. If you think it feels bad(again, I'm speaking from experience) wait till you have that mutual understanding and the other party severs ties. It sucks, it hurts, I was in severely depressed for about a year(different girl from one in school) and beat myself up all the time, lost weight, gained weight, looked and felt bad. She wasn't worth it, again, she's a fine person but now she's... wait-- I don't even know what she's doing now because she's not worth my time and I don't give a fuck anymore. It's called perspective and it comes with age and experience and stepping back from the situation and evaluating things from outside of your emotions. You can do it, all you have to do is try.

See, the thing about women is, and this may not be the best way to phrase it, but it's about respect with them. They want a man(I'm assuming you're a guy) who they respect and who others, friends and general public also respect. To get said respect you must first respect yourself. Not in a narcissistic sense, but a healthy self-esteem.

So take a step back and assess yourself and life. There's going to be some weak spots or things you're not happy with-- everyone has those-- but you're going to target the ones you can do something about and you're going to improve them.

There's going to be some really good qualities and aspects about your person as well. You're probably pretty intelligent-- congratulations. You have a skill or quality that a lot of other people don't-- congratulations. Relish in these things, they're what make you you. These are why you're not going to be depressed anymore. Sharpen and hone them into the weapons you use everyday to make life and the world your bitch. You are now a one man army out to conquer the world and the things in it you want to achieve.

So just forget about this girl for a little while and just focus on yourself, no one else will focus on you until you do. I know it seems weird but it's true. You think Obama or Teddy Roosevelt got elected feeling bad about themselves? Think Clooney goes home everyday and says "I'm attractive enough but Batman & Robin was terrible?" No, look at his list of romantic endeavors. That comes from sure, his looks, but because he believed in himself head out to Hollywood and casting rooms and work his way to the top. He had a goal and he worked towards it, he made it his bitch. He had confidence and believed in himself, then other believed in him and his abilities.

So, for the next month, and this won't be easy, forget about this girl. Stop wasting time on her. That's what every moment you spend thinking about her, but not acting on it is, wasted time. First of all, she may be breathtaking-- but guess what-- there's idk, a million other women on earth who are on par with her. They're out there whether you know it or not. So, she's probably a nice person-- but she's not the only one out there.

While you're not thinking about her this next month you're going to focus on yourself. You're going to asses your strengths and witnesses, what you genuinely like about yourself and what you would like to improve upon. Then you're going to physically write down a plan of action on how to sharpen all of these strengths and witnesses. Nothings going to just fall in your lap. It takes a concerted effort.

If you still want to think about it from the aspect of a breathtaking girl-- make a plan to become the man she deserves, the man who takes her breath away. A breath taking girl needs a strong, secure man right? You don't want people saying "Wow, how did he score her?" you want them looking and saying "That makes sense."

But don't focus one any one girl, just focus on the idea of the girl you want to be with. A companion worthy of your love and commitment. That's who you're doing this for, this yet unknown beauty-- but most of all you're doing this for yourself. You are all you really have in life right?

Try and think about it from a female perspective. What do you think is more attractive. A nice, sweet guy, who says "Look, I'm a nice person, and, I don't really deserve you, you're way out of my league, you're so pretty and I'm really not, but, I promise I'll love you and treat you right, if you just choose me." I've been this guy before. Or, do you think a girl would more likely choose a guy who said "I can have get any girl I want, just by the virtue of being a guy who works for what he wants, and out of all of these women I could date-- I'm choosing you"

What's funny is, and I know from personal experience this really happens. As soon as you start focusing on the things you want out of life. The person you are and want to become. You start doing the things to get you there and you stop worrying about getting one particular girl. Women will take notice of you. If you always pass this girl during the day at school or work and you kind of almost cower in her presence, blush, have a look on your face like "I'm not worthy" it's easy and no fun for her. Sure, it's flattering, but there's no thrill or chase in it for the girl. Instead walk by with your head high. Maybe you don't even notice her really because you're busy and got shit to do. This is much more interesting to a beautiful girl than someone just fawning over her. "Hmmm. He seems really driven. I wonder what he's working on. Did he notice me? I wonder if he thinks I'm pretty. This guy is definitely interesting, he just seemed like he knew his place in the world and where he's going. It might be fun to talk to him and see why he's so seems so sure"

The second one is what we're going for. It's a game man, just have fun. Make it fun for the girls. Don't give them everything right out of the box. Add some spark, some mystery. Keep her guessing if you like her, if you think she's pretty, be spontaneous "What is this crazy guy going to say next that makes he snort when I laugh"

A lot of people probably read your comment and rolled their eyes. Some because they can't relate, some because like me, they cringed because they knew the exact pain and inner turmoil you feel every day when this happens.

I wrote this whole thing, which I hope is cogent(I've been up for 23 hours) not because you deserve it. Not because I owe it to you because you're a nice guy. If you think like that you'll just keep getting ignored and run over. I wrote this because I was you. Life is just what you make it. You can focus on the shitty stuff or you can focus on achieving the things you want in life and becoming the kind of guy you respect in the world-- and have fun while doing it.

Read this.

Check out this book. It opened my eyes up to a lot of stuff and I've been passing it around to my friends as well. If you want you can PM me you're address and I'll mail you a copy, just because I'm an amazing person like that.

There's a lot of subreddit's which may help you out. There's /r/Fitness if you want to get in shape. There's subreddits for educating yourself on all sorts of topics and improving your life. As far as women go you can check out /r/seduction, I know it sounds a little brash if you've never heard of it. But really it's mainly about respecting yourself, fixing the way you see the world and becoming a guy that women are attracted too.

You don't have to be sad anymore man, trust me.

u/Rikkety · 7 pointsr/AskMenOver30

You sound like the me of about a year ago. There's a lot of things I recognize from your post. I also felt like I failed at life. I disliked my job, felt like everyone was passing me by, I had anxiety issues, I had a hard time connecting with people, especially women, couldn't get motivated to do even basic stuff and was always worrying about what other people thought about me.

Now, I feel good about myself, I'm starting a dream job in 2 months, I enjoy talking to people (and they to me) , I'm more productive than I ever was, and I'm dating a pretty cool woman. I'm only a few years older that you are, but I hope I can help you find your path to a better life.

The first thing you need to realize is you are not failing in life. You are 27 and have many years ahead of you. You can make those years into a wonderful adventure. It'll take some hard work, but guess what: everything worthwhile does. So, maybe you need some extra time to figure out how to proceed in life.

You need to be true to yourself, stop worrying about other people, and learn to love yourself for who you are. Easier said than done, to be sure, but it's possible. I'm going to say a lot thing about the kind of person I think you are (or see yourself as), some of them may be wrong, but try to see the bigger picture. If it helps, just imagine I'm talking about myself instead of you.

> And I know this is not a competition.

You say that, but everything else you write in those two paragraphs (career and future) screams the opposite.
You need to ask yourself: what do you want to do? What would you like to achieve. These aren't easy questions, but I'll come back to those later. For now, just know that whatever everybody else is doing is totally irrelevant to your happiness, or at least, it should be. You don't owe anybody anything. You don't have to prove yourself to anyone but you. There will always be people with better jobs, bigger brains and hotter girlfriends than you. That doesn't mean you are inferior, unless you define yourself by just those things.

So don't do that.

You seem like you derive most of your self-worth from external sources, meaning that if those external things (career, social status) take a turn for the worse, they affect your self images. You seem to need approval from other people to feel good about yourself, which causes you to act in ways you think others will approve of, instead of what you really want. You're measuring yourself against others, instead of against your own personal yardstick. You're hiding your personal needs and flaws because you're afraid other people will dislike, judge, or abandon you because of them. Right now the biggest thing standing in the way of your happiness is that deep down, you don't believe you deserve the life you want. You have a negative self-image and you're holding yourself back because of it. You have internalized these negative thought patterns for whatever reason, and you need to break out of them, because they are counter-productive.

You need to start believing that you are a person deserving of happiness, love and respect, despite your imperfections. You need to stop caring about other people's opinions and stand up for your own. You need to put your own needs and wants first, instead of catering to others.

You are responsible for your life and no one else's. That means both that you're the only one you need to answer to, and that you're the only one who can make you a happy person. That means figuring out who you want to be. Which, like I said, is not an easy question when you spent most of your life figuring out who "they" want you to be. But I assure you, it's worth it.

I apologize if I'm rambling (remember, I'm talking to myself as much as I'm talking to you), but this is where my life changed. And it's still changing: it's a work in progress and I will probably never be completely done.

I would recommend you read "No More Mr. Nice Guy" by Robert A. Glover. You can read the first few pages on Amazon; see if you recognize anything in it. (Or have a look at the web site.) If you do, torrent it, get it from in one of their billion promotions or better yet, buy a physical copy (that always works best for me). If you can't afford it, PM me and I'll send you a copy on my expense. It goes into a lot more detail on the issues I've only vaguely outlined above. It seems to me you are a textbook "Nice Guy". (Which is, in fact, anything but nice.) Glover outlines the symptoms of the Nice Guy syndrome, why these behaviors are counter-productive, and how to change the underlying thought patterns step by step.

To stop being a "Nice Guy" is not to become an asshole, by the way. In fact, you'll probably become a better, more honest and genuine person because of it. One caveat: it has some material about masculinity and femininity, which some people find a bit misogynistic as they feel it paints women as the Bad Guy (or Girl, I guess) behind this phenomenon. I didn't see it that way. I don't think resentment towards women is justified based on this issue.

This book literally helped change my life. I was also lucky enough to have some great friends who believed in me even when I didn't. A support system in crucial for successfully turning your life around, because you need people you can trust, who can pick you up when things don't go as smoothly as you hope. A few good friends is enough. Maybe siblings if you have any. Let them know what you're trying to do, and I'm sure they're willing to help. If you don't know anyone who could, hit me up and I'll support where I can.

Some other books that have helped transform into a new person the past year were "The Charisma Myth" by Olivia Fox Cabane (helped with my social anxiety) and "The 7 habits of highly productive people" by Stephen Covey (helped with being an effective person and getting my priorities straight). These three share some common ground, as they all demand you reform your thought patterns in order to genuinely be yourself, before any real change can happen. I found they really complemented each other rather nicely for the particular rut I was in.

Some other tools that have helped me (that others have already mentioned as well) : exercise, meditation, keeping a journal, positive affirmations, talking to people I trust, hugs, playing music, asking for help when i needed it. Maybe these sound trivial, but I couldn't have done it without these factors.

I hope you read this far. If you have, let me know, even if you think I'm talking out my ass. I'd like to know what you think about it.

You can do it. You deserve to be happy. You have the power to change. You are an awesome person and it's time you show the world.

u/adamzx3 · 5 pointsr/javascript

I can definitely relate, this sounds just like me last year! I've done things the hard way and it took me 5x longer. I also prefer screencasts to books. I always need to create a project to solidify those fresh skills, otherwise they'll be gone in a month. Also tutorials for things like Backbone assume you know how to use jQuery, Underscore, and things like REST, and JSON responses... this can quickly get confusing if your not familiar with all of these. My largest regret is not building enough practice apps in the last year. I really should have applied more by doing, instead of staying in the theoretical world.

Here are some insights that i've made and the courses/tuts/projects that helped me the most:

Learn the language first:

u/TantraGirl · 28 pointsr/sexover30

I was able to orgasm with a vibrator and a lot of time, but never could get off with a guy until my (future) husband and I got seriously experimental about it. I'm very glad we did. It has made a HUGE difference! If you want to make an effort to change this, I encourage you to keep exploring alternatives.

That's important, because women who have trouble having orgasms differ so much in terms of what works that it's really hard to give specific advice, except this: don't stop trying new things just because the first ten don't work!

Fortunately, most of the things you will want to try are interesting and enjoyable, even if they don't work the first time, so the journey can be fun even if it takes a while.

This is a good place to start:

  • How Women Can Become (More) Orgasmic.

    It has a bunch of links to other resources, including this classic book, which I recommend:

  • Becoming Orgasmic: A Sexual and Personal Growth Program for Women, revised edition

    It's out of print, but Amazon usually has used copies for under $10, shipping included. It's a classic for a reason. It has helped many, many women have their first orgasms and their first partnered orgasms.

    If you're like most people, you both came into your relationship with a set of preconceived ideas about what "having sex" consists of, in terms of the sequence of steps, the techniques, and the amount of time devoted to each part of the process. You've tried that and it hasn't worked, and you've tried a lot of variations on those themes without success. But you haven't explored all or even most of the possibilities, so don't give up now.

    A good example of that is the website OMG Yes!!!, where you can learn many variations on about a dozen basic ways for your partner to stimulate your vulva and clitoris with his fingers. (It's $39, but definitely worth it.) I recommend exploring it first and experimenting on yourself, and then you can show him what you'd like him to try.

    I also recommend the book She Comes First: The Thinking Man's Guide to Pleasuring a Woman, by Ian Kerner. It will help a great deal with the "stalling out" problem.

    More generally, I would urge you to:

  1. Read all the relevant parts of A Beginner's Guide to Good, Great, and Amazing Sex, especially the sections called "Focus on Her" and "Troubleshooting."

  2. Get an inexpensive folding massage table. (Under $100 on Amazon, the best investment in good sex you'll ever make.)

  3. Do sensate focus therapy together for at least three months. (This is the program described in the second half of "Becoming Orgasmic".]

  4. Read the relevant articles from the SO30 Wiki for tips on oral and manual technique and advice on increasing sexual arousal during foreplay.

  5. Adopt a longer, more sensual script for sex that includes a lot more cuddling, deep kissing, erotic massage, and foreplay before PIV, and follow that script at least half the time.

  6. Specifically, learn sensual/erotic/tantric massage and do it a LOT.

  7. Try an air-pulse type vibrator (e.g., Womanizer Pro40 or Satisfyer P2) and a regular vibrator with a different strength/pitch. (I.e., if the one you have is high-pitched and buzzy, get a deep rumbly one like the Magic Wand, or vice versa.) Try out each one during PIV. Reverse Cowgirl is the best if having him watch you is a problem. If not, Regular Cowgirl and Butterfly are also great. (Butterfly involves you lying at the foot of the massage table with your legs up and he stands facing you. Lots of room for a Wand!)

  8. Try to create the most relaxing possible situation, a time and place where you are super relaxed. Get some good hard exercise, go dancing, sign up for a spa day, go to the beach or the park and spend some time communing with nature. Have a glass of wine, meditate, spend an hour with a litter of 14-week old puppies. Do whatever it is that works for you to get you really relaxed. Then take a long shower or bath and let your SO give you a great full-body massage that gradually incorporates fingers, oral, and your favorite vibrator.

  9. If you have access to a trusted source, MDMA can do wonders.

    Good luck! ❤️💕
u/mrbiggbrain · 1 pointr/DnD

D&D Basics (Getting started)

The Absolute Basics

First you will want to grab either the Basic rules (Free), the Starter Set (Cheap), or the Players handbook, Dungeon Masters Guide, and Probably Monster Manual

Then you need to have at least a few items

  • Dice (Phone apps will work if absolutely necessary, or these)
  • Paper & Pencil (for notes)
  • Character Sheet (In the free PDF or an app)

    The starter set is nice because it does a bunch of the work for you, it has an easy to follow adventure, pre-made characters, Dice, and rules for the DM and players. And at half the cost of just the players handbook AND including an adventure, it is an incredible value.

    Once you finish that then looking at at least a players handbook for the extra races, classes, backgrounds, and other things is a good deal. That should let you run free adventures people have put online.

    The DM's guide will let you get deeper into rules and the right way to call them, break them, and make them.

    The monster manual can be a great tool to make better encounters.

    If you want to run a commercial adventure after the one's included in the starter set, "Tales from the Yawning Portal" includes the Sunless Citidel, considered by many to be an excellent adventure for those new to the game and just recently brought up from 3.5e into 5e

    Common Tools of the Trade

    As you start running more complex adventures you are going to want to have a few tools to keep things moving, either as a player or as a DM.

    As a Player

    The bare essentials every players should have are listed above, but most players agree having a few extras can make the game run really quick.

    Spell Cards

    These cards have all the spells available for specific classes or from specific books on really well organized cards that make it easy to set aside your prepared spells and quickly reference all the core details.

    Cleric, Arcane, Ranger, Druid, Bard, Paladin, Martial Powers and Races, Xanathars Guide to Everything

    Binders & Sheet Protectors

    Keeping everything neat and organized can be a huge time saver and make it much easier for you to find what you need. Binders can be a great way to keep your notes and other materials organized. In addition many sheet protectors easily erase dry erase markers making it easy to keep track of spells and other changes without ruining character sheets with constant erasing.

    As a DM

    DMs have their work cut out for them. But a few simple tools can make the game run smooth and leave everyone having that much more fun.

    Index Cards

    A set of index cards can go a long way to speeding up the game. Players can put details on spells or magic items on them. You can prepare loot for the game ahead of time and hand it out allowing players to look over the gear as the game continues. You can also use them to hide portions of a battle map or commerical map to give the effect of fog of war.

    Game Mats

    A game mat let's you make single maps by drawing on them with dry erase or wet erase markers. Many are made of vinyl and can last a long time. Normally they will have either 1" squares or hex shapes.


    These things can be expensive, but giving your game that 3D upgrade and helping players better manage space in a game can be well worth it. You can use actual miniatures (Like those from Reaper), Create custom ones on Hero's Forge, or even just buy some cheap stand in tokens from Game Mash.

    If you just need a cheap way to keep track of positions army men, bottle caps, colored game pieces, and even legos can all play the role.

    No matter what you use, you can pick up colored rubber bands to mark status conditions or other information.

    Where Can I Play?

    You can find tons of places to play D&D.

  • Get together a gaming group.
  • Find a Guild or club in your area.,
  • Most hobby shops and especially comic book and gaming shops offer games, usually Adventure League. WotC offers a tool to find stores here.
  • /r/lfg can be a great way to find others to play online with.
  • Play by Mail sites like RPoL allow you to play by forum post.


    Critical Role - Voice actors playing DnD, Matt Mercer (The DM) is an amazing Dungeon Master and shows how the game should be played.

    Matthew Colville - Amazing videos on being a DM, must watch material for every DM. Even when your opinions differ he gives good reasons and great advice.


    These let you ciew all the free open rules (SRD & Basic Rules) for D&D 5e at no cost.

    Roll20 Compendium - Has all the open rules for the game, so a good source for monsters, items, spells, etc.

    DnDBeyond - A more official source for the content, plus you can buy all the materials released by WotC to use, and has a great character builder.

    Adventures & Maps

    DMsGuild - Tons of free and paid adventures and other materials. The quality can be varying, but many are free and that can be great.

    /r/dndmaps/ - What more can they say, D&D Maps.

    Mike Schley Makes many of the maps for the D&D Adventures.

u/bureburebure · 2 pointsr/comicbooks

warning: long post incoming

tell your son that he is at the best possible age to pick up drawing. if he draws a lot now and keeps it up for the next several years he'll eventually become good. by the time he's out of high school he could be almost pro depending on how his artistic pursuit goes.

every single artist, even those with natural talent, started off from the same place. it takes a very long time and a lot of bad drawings to get to a place where your art "looks right".

"how to draw books" are largely crappy because they tell you "copy this" without actually teaching you the basic fundamentals that all artists have to learn. there are very good books out there but you have to talk to actual artists/be part of actual art communities to really learn about them.

honestly, the most important thing at this stage for your son is for him to learn not to be too hypercritical of whatever he does and for him to have fun drawing. i can't stress the "fun" part enough. of course this is probably hard for him to do at this point because he's a kid and kids get frustrated pretty easily, but keep encouraging him.

one thing that might be helpful is showing him "here and then" comparisons which show that artists get a lot better over time. i could give you some examples if you want, from my own art even.

while the main thing is just for your son to learn to have fun and keep drawing, i suppose it wouldn't hurt for me to post a couple of the resources i've amassed over the years. However I cannot stress enough that no book, video, tutorial, or whatever can substitute the hours and hours of drawing that are required to get better. again, the most important thing is for your son to draw a lot. the rest will come with time.

another thing to keep in mind is that everyone is different, there are many ways to learn art and everyone learns better through different ways. some artists mostly just copied other people's art to learn, others did detailed focused studies of art fundamentals, some used tracing as a learning tool (not to claim the art as their own). there are many different ways and techniques that are all basically rooted in the same fundamentals. i'd say it's most important right now for your son to try a bunch of stuff out and see what helps him the most. there is no "best way".

with that said...

this is a site focused on digital painting primarily but there are a lot of videos about basic drawing techniques and a lot about the struggles/psychology of art. this is a good place to start.

this is one of the best youtube art channels around. these [are] ( some good videos to get you started out.

this guy is a phenomenal artist and has tons of amazing tutorials/breakdowns on his page. give it a look, you can try and ask him for advice yourself if you want. he's a super nice guy so if you ask politely for advice i'm sure he can give you better direction than i could.

books that i think would be the most useful/important for a beginner:

Drawing on the Right Side of the Brain don't pay too much attention to the "science" in this book, it's the drawing exercises that you really want. it will teach your son to draw what he sees much more accurately.

Fun With a Pencil Andrew Loomis is renowned for being a really good art instructor. any of his books are worth owning but for your son i'd recommend starting with this.

Vilppu Drawing Manual In terms of introducing a beginner to basic artistic fundamentals (especially form) this is the best book i've found so far.

i apologize for the long post, but this is a topic i'm pretty passionate about. if you want more help, guidance or resources you can feel free to pm me and i'll help you to the best of my ability.

u/[deleted] · 3 pointsr/getting_over_it

I've dealt with very similar issues all my life. I was raised by the most negative people I've ever met. I've had MDD off and on (or more accurately, in and out of remission) since before I was 10. I've got huge self esteem problems, and issues socializing, especially with women. I isolate myself, and have big problems attending school and/or work.

But I'm 40, and I've been in treatment off and on for 18 years. I've learned a lot through therapy, and from my own research and trail and error, and just by living through it. So I'll try to tell you what I know.

First, you have several issues going on. It's easiest to first figure out what your primary issues are, and work on them. Many of the smaller issues are just fallout from the more basic troubles, so if you can fix them, the little things just clear up on their own. That's the good news. The bad news is that there is, of course, no magic pill.

From what I can tell, your issues are mainly low self-esteem, lack of social skills, and low motivation (or optimism, hope, etc.). Those issues cause you to underperform in school and career (to the point that you don't have one), cause you to have a lot of social anxiety and avoid trying to date or have friends, and become depressed as a result of the lack of anything going on in your life. You live in a void, and so there is nothing to stimulate positive emotions in you. If you work on those things, you'll start developing things like a healthy range of emotions, a strong libido, drive and ambition, etc.

First of all, motivation follows action - not vice versa. You will basically never just feel like taking on all these life issues and then do it. What you have to do is have a little bit of faith in what other people tell you, and just start doing some small things. As you do the small things, you will start to feel better and more positive, and it will be much easier to take on the next thing.

An example is if your room is a huge mess. You will most likely not ever just feel like cleaning it up, it's too big a job and it seems pointless to even start because you think you'll never get it all done because you feel so drained already. So you have to just use the logical part of your brain, and tell yourself that if you clean a little then you'll feel better and will likely clean some more and feel a good bit better (a clean environment helps you have a positive mood, a dirty, chaotic environment is depressing). So you set a very simple goal of cleaning off the top of one dresser. That's it. Your goal is to clean this one 2x3' space - that's so easy you can't fail. It will take a few minutes at most. Don't make it overly difficult - you don't have to organize the CD's into alphabetical order or scrub the dust out of the cracks in the wood. Just throw away the garbage sitting on it, put the loose junk into a drawer, and put whatever picture frames or candles or whatever lives there back in order. Maybe wipe off the dust if it's covered in it.

After you have done that, you will feel a sense of accomplishment. That can cause you to get motivated to do the next thing, if you let it. Everything is about baby steps. You just keep taking baby steps, and when you fall down, you just get up whenever you can and start taking baby steps again. Don't even bother looking at the big picture, it's too overwhelming.

The way you cleaned the top of the dresser in the hypothetical example is how you'll approach everything. You just aim to do one small goal. One goal that is so small that you really can't fail. When you reach that goal, you feel positive, and you set another tiny goal. In this way, you set yourself up for success after success, and they build on one another. But your goal still is just the one thing - if you clean the top of the dresser, you win. Don't think of it as cleaning the dresser in order to get yourself to clean the closet and then the whole room. Your goal is only to clean the top of the dresser. That's all you have to do. It's simple. It will take 5 minutes if you do it slow. But by completing that goal, it's very likely that you'll choose to do more just because you've become motivated.

Another thing that is very effective is to keep written records. If you are anything like me, you hate writing notes and staying organized. I never write stuff down. I learned to rely on my memory and have never been able to keep an organizer or even use post-it notes well. But when my therapist had me start tracking my habits and moods, it did wonders. I'm on the computer all the time, so I just make a little 4x2 table or something in google docs, and use it to keep track of what I'm doing and how I feel. You can do it however you want, just don't make it complicated or really ambitious. Just a space where you can write down real quick what you did today and how you felt.

Writing has a kind of magic that just thinking doesn't. It takes ideas and turns them into something physical, tangible. So when you write down "I cleaned off the top of the dresser this afternoon and that made me feel a little better for a while," it somehow makes it more real, more memorable. You can't go back and edit the memory to say that it didn't do anything, because it's there in black and white. But if you don't write it down, it's easy to go back and think "well, it didn't make me feel that much better, it wasn't really worth it." You don't even need to go back and read it, just the fact that you wrote it somewhere is enough to make it real, and to give it the power to start changing the way you think, and what you believe about reality.

So just start with simple goals like cleaning up a little around yourself, and taking showers, etc. - and keeping a very simple daily log of what you did and how you felt each day.

After doing that for a few days or so, you will feel a bit better about yourself. Then, you can start venturing outwards. Don't start making bigger goals! Keep the goals really small, too easy to fail. But just move in an outward direction with them. You may want to start exercising by walking to the end of the driveway and back. Or to the end of the block and back. Whatever is so easy that it's really more work to make an excuse not to.

You can start reaching out socially in the same way. You've got the internet, so you could leave a one line note on an old friend's facebook page. Just say "hey bud. Haven't talked in a while. Hope you are doing well." Or go to /r/r4r, or /r/ForeverAloneDating or any kind of social subreddit, and talk to somebody - just find a comment from somebody who has a similar problem, or whose opinion you like, and send them an IM saying that you like what they said, etc. Not with the goal of making a new friend that you'll keep up with forever. Just with the intention of specifically talking to another human.

Or you can make a goal to leave the house and say "hi" to at least one stranger today. If that's too hard, you can make a goal to just make eye contact with one stranger today. If you keep making these ridiculously simple goals each day, and writing them down, things get easier and easier. After a while, saying "hi" to strangers may become a habit. And suddenly having an actual conversation with a stranger may be an easy goal for you. But don't get ahead of yourself, just go do something you can't fail at. Your goal may be to just make eye contact with a pretty girl in your class. Or to just say hi. Or if that's too easy, then to have a conversation with her. Whatever is easy to do, but you aren't already doing. As you keep doing these things, you become more and more socially comfortable.

Don't aim to "go on dates". Going on an official date is so stressful. It's setting yourself up to fail. Just aim to hang out with, or be around, people you like and girls you are attracted to. When you're in college, you can spend time around girls and get used to talking to them a bit before going on a proper date with them. It's far easier if you are already comfortable talking to them between classes or whatever to move on to social things outside of class.

Don't forget to do fun things. The meaning of your life is up to you, no one else. There's no reason that you "should" be anything except whatever you want to be. So do the things that you genuinely enjoy. If you like playing video games, play video games. Just let them be a treat, and don't let yourself feel bad, like telling yourself that you "shouldn't" play vidya games so much. Allow yourself times to just indulge and not worry about anything.

If you want to get better with girls, aim lower. Don't ask out the prettiest and most popular girl you know because she's the one you like the most. Go hang out with girls you don't find all that attractive, but do like or feel comfortable with. Just go hang out with females (and guys too for that matter). Get used to being around women. It doesn't need to be a date. You can just go shopping with a girl. Tell her you have some event coming up and you need a new outfit, and want a girl's opinion, and go to the store and have her help you pick something out. Being around any women makes you more attractive to women, because you get more comfortable, and they give you tips about how to not be gross or weird. If you have a female best friend who is strictly platonic, she can be the best wingman you'll ever have.

Look into seeing a talk therapist if you feel like you are really in bad shape. Someone who does Cognitive Behavioral Therapy is perfect for you. If you want to learn how to do CBT but can't get into therapy right now, buy the book Feeling Good: the new mood therapy by David Burns. Read it and do the exercises.

TL;DR: Make goals that are so small you can't fail. Do them, and each day write down what you've done and how you felt.

u/guifroes · 2 pointsr/cscareerquestions

Hahaha, you're right, my post sounds totally creepy, sorry about that.

What I got from you is that you're basically dealing with 2 issues:

Lack of knowledge, skills and experience: it's like you have 4 times 1 year experience instead of 4 years of experience. Seems that you miss being exposed to different challenges and solutions to those challenges.

Imposter syndrome - fed by the previous one

First, it's important to acknowledge that both these problems will follow you throughout your whole career. The very nature of our industry, whit new tools, languages, frameworks and techniques appearing litterally everyday, makes it impossible for someone to know everything. Given this scenario, we have to be smart about what and how to learn things and, at the same time, be confortable being unconfortable.

I think those are a whole new discussion (we can talk about it if you want) but I'd like to suggest some tactics that might help you on a shorter term:

Join a community

This was what made THE big difference for me years ago. I didn't know anything other than what I did at my job; the community showed me different ways of doing my work that I didn't know even existed. It's a perfect space to learn, share experiences and network. Try to join a local community that has in person meetings. I still get a lot of energy from interacting with people from outside my job.

Pair programming

I don't know if your team does pair programming, but I'd recommend it. Even if you team doesn't do it, ask people if could pair with them for an hour or so on their tasks. Learn their style, how they use their tools, their shortcuts. Ask what they're thinking as they code. Discuss the solution being implemented, talk about alternatives.

I think pairing is one the best ways to learn.

Good article about techniques for pair programming by colleagues of mine

Start a pet project

Assuming you lack experience on backend development, I'd suggest you start building a complete web application on your free time. Build something that you care about and would actually do something, so you stay motivated. You can start with something very simple and add features as you go.

I don't know if you're interested in some specific language/technology and I don't know what your team uses on your current job (it would be nice to practice on something that would be immediately useful on your job), so I'd recommend something like Rails. Rails can be simple enough for a beginner to see progress quickly and has a huge community for support.

This app can be your platform to learn and practice a complete software development lifecycle for a typical web app - stuff like OO design, HTTP and REST, MVC pattern, unit testing/TDD, integration and functional testing, version control and how to deploy and operate a system in production.

You can share your code in GitHub and ask for reviews and feedback.


There's always someone that knows less than you do about a subject. Offer help on the communities you're part of, answer questions on reddit or stackoverflow, coach a new teammate... there are tons of opportunities. Teaching will make you feel good about yourself and will help you to reflect and understand more deeply the subjects you're teaching. Confidence + knowledge.

Host a lunch & learn or brown bag session for your team/company. You could share interesting stuff you're working on, cool technologies for your team to try or any other tech related subject. This can make you be perceived as the "go to" person on some subject and as someone who's making an effort to learn and share with coworkers, bringing lots of value to the team/company.


I strongly recommend you check out Clean Code and The Pragmatic Programmer. There are many other great books I could recommend but those two were the ones that changed the way I see my profession.

I can think of a bunch other tactics to help you improve your skills and confidence, but I think this is enough to start a conversation.

Ideally, our jobs should provide all the opportunities to practice and accomplish all the things I suggested you do by yourself. But to get one of those jobs, we need to take the firsts steps. My point is that we should be in control of our career, not your manager/team/company. If we want to learn something, or use some tool or technology, we shouldn't wait for the opportunity to come.

Does this make sense to you? Is this helpful?

PS: I'm curious about a couple of points:

When you say "I've always struggled to build big features", what kind of features you're talking about? Can you be more specific?

When you say "I have to spend a really long time just thinking about some problem", what kind of problem is this?

I might have some insight about those issues.

u/ShaktiAmarantha · 1 pointr/sex

Stop worrying. You are larger than average on both dimensions, but really it doesn't matter. Studies of sexual satisfaction shows that it is simply not associated with penis size in the middle 96% of the range. (Satisfaction does go down somewhat for women whose partners are in the top 2% and in the bottom 2%, but you are far from either extreme.)

Ignore the size numbers based on self-reports and estimates. Everyone exaggerates. The only large study of erections size - based on actual, physical measurements of more 15,000 men by trained clinicians - found that the median length of an erect penis is 5.17 inches and the median circumference is 4.6". It also found no differences based on race or region and only slight differences based on height.

Women in general are notoriously inaccurate at providing numerical estimates of penis size. In one typical study, women in the first six months of intense romantic love overestimated the size of their boyfriends' penises by more than 2 inches. So don't be shocked if you discover that some future gf is telling her friends that you have a 7.5" dick!

To see the data and find out where you fit, go here:

  • How Much Does Penis Size Matter?

    > To put all of this in context, women's preferences on penis size, except in really extreme cases, were very mild, ranking far below considerations like "cares about me," "makes me laugh," "has good oral hygiene," "is confident," "has nice hands," "dresses well," "is smart and well-educated," "smells good," "kisses well," and "gives good head" in women's actual and stated priorities.

    Some more links you might find useful:

  • Our very own r/sex FAQ on first time sex.

  • A Guide for Male Virgins - tips for getting ready, a detailed 12-step plan for first-time sex, and what to do afterward.

  • Better Sex 101 - lots of good tips.

  • Anatomy of the Vulva - so you both know what's where.

  • How to Locate the Clitoris - because that's important!

  • She Comes First: The Thinking Man's Guide to Pleasuring a Woman, by Ian Kerner - the best book for men who care about satisfying women.

  • Aunt Shakti's Action Plan for Proactive Modern Virgins - tips for her on getting ready and having a painless first time.

  • The Hymen Myth

  • You Can't POP Your Cherry! (HYMEN 101 video)

    The last two are important because if you're like most people pretty much everything you've been told about the hymen is false. You don't POP a hymen, and only a clumsy brute rips one. They are quite stretchy. You get her fully aroused and then gently push it out of the way and ease your way in. (This is true whether she's a virgin or not. I've had sex thousands of times and my hymen is still intact.)

    (A tiny percentage of virgins do have hymens that significantly obstruct the vaginal opening, but these should be dealt with by a doctor, not a guy with a battering ram. It's a simple outpatient procedure.)

    That's a lot of reading, and it's important to have some idea of what you're doing. But the best advice of all is to just relax and accept that it's often going to be awkward. Like all virgin couples, the two of you just need to fumble through the learning process together, with the understanding that real sex is not like Hollywood and definitely not like porn. Awkward and silly things happen to everyone. The more you can laugh at them together, the more fun you'll have and the better your memories will be later on. :)

u/Arduinna · 1 pointr/sex

I can't speak for all women, but I associate sexual encounters as emotional experiences. My fondest memories of sexual encounters are fond because of who I was with, not what they did. So for me there isn't comparing sexual performance with past lovers so much. Most of the time they are behaviors/tricks that can be learned anyway. I've been with a decent number of men and my boyfriend felt very insecure at first when I'd told him how many men I'd been with before him. He had the same concerns, "If she's had better, how can I live up to that?" Truth is, you don't. You don't try. I can't make a list of the men I've been with and order them based on best and worst sexual experiences. They're all different to me. Yeah, there was some mind-blowing sex but it's not like I go into each sexual encounter and immediately start comparing former lovers. Each encounter means I focus solely on the person I'm with and what they can do or are willing to learn to do. Everyone is good at something in bed and as long as you can find a way to get her off and you listen to what it is she likes and wants then you're just fine. The love you two have will also increase the passion in the sex which heightens it anyway.

If you worry about her past you will constantly be miserable and get yourself very depressed. Stop worrying about comparing to her former lovers, stop worrying about being as good as them or better. What you need to do is realize you're not them and you don't need to be them and that she's not with them she's with you. Make your own memories. You don't worry about if her former boyfriends were better kissers than you, do you? Or if they gave better hugs?

And if you're that concerned about performance (which if she truly loves you she will be willing to work with you on it and willing to give you much practice when possible) then I suggest research. As a virgin I was incredibly worried that I'd fall into the virgin stereotype of the completely ignorant little girl that doesn't know what she's doing or how to do anything. I started researching. Research female anatomy. Read advice things on /r/sex when women answer questions about things they like (keep in mind all women are different, though there are many things we have in common that we all enjoy). There are books that give you great information like She Comes First which is a great book and various other books regarding the same topic. Don't just read one book. Read all of them. (IGNORE MAGAZINES) Compare information you learn in the different books. Watch instructional videos. Nina Hartley makes great ones, most of which you can find parts of or the complete video of online. Her one about eating a girl out is really spot on (no pun intended). As a porn lover I beg you not to try to learn things from porn. The more you learn about pleasing a woman the more you will realize how very very wrong porn does sex. It's hot, but it's all show. Knowing what to do will help your confidence boost a bit, then all you need to do is apply it and practice it. Practice is important and it will help you develop those skills better- but at least you're not going in blind. Also, ask her what she likes. Talk to her.

Don't try to compare to her past. Be yourself and make different memories for her. Don't try to be who they were- be who you are. My boyfriend was inexperienced before me, insecure, and felt badly because he's average-sized. I am absolutely blissful about my sex life with him because I love him. Because he cares and it shows. Because he's giving and considerate and makes sure that I get pleasure as well as him. There's passion and love. I make no comparisons between him or anyone I've been with because it doesn't matter how good the sex was- it's how good it is now, with the man I'm intimate with.

She's with you not with them. You need to keep that in mind and you'll be okay.

u/OhTheHugeManatee · 2 pointsr/self

This is very important and serious stuff.

The first question you need to answer is: "Do I want to live my life with a woman who doesn't love me?" You DESERVE to live your life with a woman who loves you, but whether you want that is up to you. I guess there are people who are happy to have a loveless marriage. If this is you, ignore the rest of my comment.

If you want to live your life with a woman who loves you, understand that this was part of the deal you accepted in marriage: to be loved in return. Right now you are not receiving your part of the deal, and that's not fair to you. She also deserves to live her life with a man she loves, and anything less isn't fair to her, either. If she can't ever give you that love, then the appropriate course of action is to end the marriage and find someone who CAN do that for each other.

But I hear that you want to work on it, and that's a great course of action. It's totally possible for you guys to change so that she can rediscover those feelings of affection.

My point is that this is a very serious situation. In the long run, this will end in unhappiness and probably divorce. Facing that kind of future, it's OK to take drastic action here. In fact, this is the time when you SHOULD be taking drastic action! People change jobs, move houses, and even move states to save their marriages. This is THAT kind of action time.

No matter what, I can promise you that just waiting to "see where things go" is going to end in unhappiness and divorce, if you have any self respect. Without effort and (usually) help, "where things go" is more of the same. And that's not fair to you, to her, OR to your child. This will take work, and she has to be willing to do that work with you.

The most important thing is that both of you want to work on this. It won't work if it's just you. So sit down with your wife and talk about it. Tell her that she deserves to be in a relationship with a man she loves, you deserve to be in a relationship with a woman who loves you, and your child deserves to grow up with an example of a healthy, loving relationship. You want that woman, that relationship, to be the two of you together. If you can get her to agree to work with you to try and rekindle the affection between you, then it's a green light to go ahead. If she refuses, then there's actually no hope here.

Assuming you get that green light, this is how you work on a relationship:

  • get to a couples therapist. I hear that she doesn't want to, but if she wants to work on the relationship, that's how you do it. Remember that this is a joint decision; just because she doesn't want to doesn't mean it's off the table if YOU want it. Saying she wants to fix the relationship but doesn't want to go to a therapist is like saying you want to fix the car but don't want to involve a repairman.
  • While you hunt for a therapist (and it takes some looking to find someone you both like/trust), look for books and resources that can give you ideas for where to direct your efforts. You should BOTH be doing this. Some good resources:, the 5 love languages,, No More Mister Nice Guy. These resources helped me and my wife recover our relationship, and there are others. Read them together.
  • Set a weekly meeting time to talk about how you've been feeling about each other over the last week. put it on the calendar, and go out of the house for the meeting. This is when you can talk about what seemed to work, and what didn't. What moments where she felt good, and when she didn't.
  • recognize that this is your problem too: you guys have built a relationship where only one side is feeling the love, and TOGETHER you have to fix it so that both sides feel it. She is feeling the symptoms, she can help you figure out where some of the problems lie, but you both will have to work to fix it.
  • Work on yourself. Take up a hobby that you've always wanted to do, and return to an old hobby that you haven't gotten to do in a long time. Take the time to do things for you, because you deserve it. These activities seem trivial, but they go a long way towards anchoring you in this difficult time.
  • Last, but I have to say it: sometimes people say "I love you, but I'm not IN love with you" because they've found someone else who gives them a hormonal rush the way you don't anymore. If your gut is telling you to be jealous of a male friend of hers, trust it and do what it takes to satisfy YOURSELF that there's nothing going on there.

    Good luck, friend.
u/ExcitedForNothing · 3 pointsr/Roll20

This one is going to be long-winded so I apologize in advance :)

I have been DMing D&D for a really long time. I have been DMing D&D and Pathfinder on for a while as well. I dumped all other versions of tabletop (at the moment) for D&D 5e. D&D 5e moves away from the spreadsheet stat crunching type of play that D&D 3.5 and Pathfinder embraced. D&D 5e also departed the mechanical MMO style play of D&D 4e. I think you are making a good choice in choosing 5e especially being a group of new players & new DM.

Here are the things you'll need to make work well:

  • Everyone will need a free roll20 account
  • Everyone will need skype,teamspeak,ventrilo, or google+ hangout capabilities to talk. Trust me voice chat is much easier to interpret than typed chat available in roll20.
  • Everyone will need a really good imagination and patience as you all learn the ropes

    Since you are all new, I would recommend running the Lost Mines of Phandelver. It is included in the D&D Starter Set (On Amazon for $12). It is an adventure that will take a group of 4-5 players through level 5 (roughly). I ran this for a group of newer players and it took us roughly ten 4-hour sessions to complete. The set comes with some helpful things for you as the DM and them as the players. It comes with the basic rules for both the DM and the players. These are also available and updated through Wizards of the Coast for free as PDFs and browser-friendly sources. It also comes with some pre-made character sheets. These are handy as they can save you time (and money) from generating your own characters. Usually for 4 players, it can take an entire session to plan out a character for each of them if you are new. This can give you all a taste of how the game works, how characters work, and if everyone is on board. Totally optional though! The adventure itself contains a DM booklet that gives you tips as a new DM as well as maps, layouts, monster stats, and descriptions.

    On the subject of maps and roll20. Roll20 gives you a graph-paper view that takes up most of the layout of the app. There aren't many gridded, digital versions of the maps for 5e adventures that I have seen. The ones that do exist will cost a little bit of money. This artist sells both player and DM versions of the maps for the adventure, but leaves some of the smaller encounters out. 5e relies on a lot of mind theater and imagination on both the players' and DM's part.

    What I tend to do for maps is, use the graph paper and draw on it using the simple controls roll20 provides. I tend to do this when I can't accurately describe the way things are laid out. For instance in the Lost Mines the first encounter can be tough to explain so I drew a rough outline of how the map looked while explaining to the players where they were, and where what they saw was.

    I'd highly recommend you get a free account at first and then log in and play around with it, just to see what it handles like. It has its quirks for sure.

    Aside from the Lost Mines of Phandelver, there is one other official campaign called the Tyranny of Dragons. It contains two adventure books, Hoard of the Dragon Queen and Rise of Tiamat. They take a party from levels 1-8 and 8-16 respectively. Hoard takes a lot of skill to run as it is a bunch of loosely related occurrences that clever or adventurous players might want to explore outside of. It doesn't provide much support to a new DM for handling this. Rise of Tiamat opens up a little more and is easier to run but without Hoard, it can be confusing as to what is going on.

    Drivethrurpg has some smaller 5e adventures available. I haven't played any myself, but I have heard some good things. They are located under their D&DNext/5E heading.

    If you decide you do like 5e or are really committed to the cause from the get-go, I would recommend any player and the DM get the Player's Handbook (Amazon). This contains the rules governing attributes, player creation, combat, downtime, and a full description of all spells and spell casting classes. It goes well above and beyond the basic rules for players and I feel it is truly necessary to having the full experience. It can be pricey if you end up not liking it though.

    The DM additionally should consider the Dungeon Master's Guide. It really helps in running adventures, giving good flavor to the game, and creating your own campaigns. The Monster Manual is an optional buy, but helps by giving a large list of classic D&D monsters to populate your game with.

    I'm guessing you have already found /r/DnD, but for 5e you might want to consider /r/dndnext which has weekly question threads and is more focused on 5e (which was previously codenamed next).

    tl;dr: Whatever you end up doing, just make sure you and your friends agree that it is to have fun. You don't need to be perfect with the rules and you can feel free to make mistakes along the way as long as you all agree to laugh it off. You are playing with your players as a DM and not against them! Good luck.
u/AtriusUN · 7 pointsr/DnD
  1. I would recommend the D&D 5th Edition Starter Set if you are all new. Pathfinder/3.5/4E are all rather rule heavy and could take a while for everyone to get up to speed and be playing. You can download the basic rules for 5th Edition from the Wizards website for free (for players and DM), though there is additional bonus information in the Player's Handbook you can buy at your local game shop or online. (Website:

  2. That's plenty, 2 players and a DM is recommended, but most adventures work best with 3-6 players.

  3. The players each play 1 character, but the DM plays "Everything Else". A DM is someone who should enjoy the fiction. They should be able to think and describe fantasy settings and imagine the stories they are telling in their head so they can relay it to the players. It also helps if they are willing to roleplay and pretend to be different NPCs and characters to create immersion but that's not required. Skills recommended: Organization, willingness to speak, imaginative, helpful, willing to put in some work

  4. I have not watched it sorry.

  5. World building is a great part of writing a D&D Campaign together. Often the DM will write the core of the events happening in the world so as to keep mysteries and adventure from players, but the players are free and encouraged to also make up and add to the story (such as home towns, backstories, names of great locations or historic things). It can be a lot more work to build a world for your first time playing, I would recommend not worrying so much about a world and just write a simple story for the first adventure or two (such as Save the King's daughter, or transport these goods to the wizard tower on the mountain, clean concise objective to learn the rules and learn your group).

  6. Everyone will need to know the basic rules. In terms of 5E everyone can download the PDFs and read them. The DM should read the DM Basics as well, and I would recommend at least one hard copy Player's Handbook (PHB) if you enjoy the material. There's a lot of bonus content in the PHB such as additional classes and information. (PHB Purchase links. Amazon: Wizard's Store Finder:

  7. You're playing make-believe. Your friends are pretending to be heroes. You are pretending to be the bad guys and everything else. You tell them what happens and they tell you what their heroes do. Together you make a story. Everyone follows the same rules and when you don't know what happens or who wins you roll dice.

  8. Keep it simple at first. Find or make a simple adventure that focuses on a quest that sounds fun. Don't overcomplicate it. The story doesn't need to be crazy for you to have a lot of fun. The fun will come from pushing the barrels over on the guys chasing you down the alley and failing to climb the wall and landing on your butt in the middle of a busy market street. Find out who enjoys doing what, the first adventure might result in your switching DMs at first to find out who fits the best. Experiment, make stuff up, tell crazy stories, and have fun.

    Edit. Added links to purchase the Player's Handbook
    Edit 2. Learned what ELI5 means. Sorry for my noobness.
u/nosejapones · 6 pointsr/ImaginaryMindscapes

So, I don't know whether you'll consider this good news or bad news, but the path to illustrating anything well mostly involves developing your artistic skills in general, and not one specific type of illustration. For example, you don't learn how to paint landscapes so much as you learn to paint in general, and then do a lot of landscapes.

Example: Randall Munroe, of xkcd fame. xkcd is very simplistic art (stick figures, for the most part), yet it looks better that most people's attempts at stick people. Why? Because he's an actual artist (by hobby, not by profession, although it's basically his profession now), not just some guy who decided to draw stick figures. Stuff like this is what he was working on back in his high school years, and he's clearly had many years of practice since then. His stick figures look better than the average person's because he draws them with attention to the details of human anatomy and proportions.

Okay, so what's the path? The boring answer: practice, practice, practice. If you really are willing to "put in the 10 years," then you already have the right mentality. But you probably want a little more guidance than that.

Step 1: Start thinking about art in the right way. You think you want to draw from your imagination, but what you really want to draw is reality that doesn't exist. What do I mean by that? Drawing "from imagination" isn't much different than drawing from life; it's just strictly harder. When you draw from life, you see something with your eyes and then copy it onto your paper. When you draw from imagination, you have to see it with your mind's eye and then copy it onto your paper. This means that your imagination has to come up with the details you'd normally see in the world, all on its own! That's very hard. (This is true even for stylized drawing, which I'll get to in a bit.)

So how do you learn to do that? Well, your brain can't come up with realistic details without knowing what realistic details look like. So, every artist needs to start by drawing from life. There's no way to get around it. BUT, there's a catch! If you don't have any artistic inclination right now, you probably don't really know "how" to draw from life! Eventually, you'll "get it," but for now you could use some guidance. So, you need someone to teach you. Assuming you don't have any private art tutor friends, you should get a book. The standard recommendation for new artists is Drawing on the Right Side of the Brain, which, despite its title, is not a book about pop psychology and is a book about learning to draw "the right way" from the ground up. What is "the right way"? Basically, it's forcing yourself to draw exactly what you see without thinking about it at all. You need to learn to shut off the part of your brain that tries to draw things the way "they should look" and instead draw them the way "they do look." The book will teach you all about this.

Step 2: Developing your basic skill set. Assuming you picked up the book I just recommended, you're going to want to start reading it and doing the exercises. I recommend spending the first week of your artistic journey just blindly following what the book tells you to do. Do one exercise per day for the first 5-7 exercises, and read the material in between your practice. Do practice 5-6 days a week for at least 30 minutes each day (preferably longer, but we all have lives). Don't burn yourself out by spending an entire Saturday blowing through half the book. If you're having fun with your drawing, do some light doodles on the side, but don't undertake more than one major project per day. Spend your doodling time just playing with the pencil (or pen), drawing shapes, experimenting with holding the pencil in different ways, etc. Just have fun. Not only will this keep your brain fresh for the major projects, but it's learning in its own right because you're developing comfort and flexibility with your instrument.

Step 3: Embark on your own projects. If you've worked through the first 5-7 exercises of that book, then you probably "get it" a little more than you did before; enough to start drawing anything and everything that catches your fancy. At this point, you don't need to keep following the book. Feel free to only come back to it when you need ideas or inspiration.

Copy, copy, copy. Like a picture you see online? Copy it. Your version won't be as good, but it doesn't matter, because it's all practice. However, try to make at least 50% of your drawings from real life (as in, 3D objects that you see with your physical eyes), and not pictures you see in books or on the internet. Why? Because drawing from a picture is easier than drawing from life. Pictures are, by definition, "flattened" for you, so you don't have to interpret what you're seeing as much. You need to be able to visualize and interpret objects in 3D, so you need to draw from life.

Step 4: Challenge yourself. Although your art skill will have undoubtedly improved by this point, you're still super far from your goal. This is usually where people settle in to only drawing things that they can draw kinda-sorta well, like simple objects, or copies of cartoons without any shading. This is a huge mistake! You have so much to learn and you know it, so don't stunt your growth now. If you're not sure what to practice next, I recommend drawing human beings. Why? Because there's not a single artist on the entire planet that couldn't benefit from being able to draw people; it's basically a necessary skill. It's also difficult, and forces you to move out of your comfort zone. But it's also a highly desirable skill, and once your humans start looking, well, human, you're going to feel super proud of yourself.

How do you practice figure drawing? Well, if you can find real people to pose for you naked, then go with that. But, your friends and family probably aren't going to be comfortable with that. If you feel up to it, try to find a figure drawing class (check local community colleges). But, if all else fails, find pictures of naked people online (really not that hard).

Regardless of whether you decide to pursue anatomy at this point, there are two huge skills you should start working on about now: foreshortening and shading. This shit's super hard, and you're going to suck for a super long time at it. If you don't know what foreshortening is, it's basically the fact that objects warp themselves into optical illusions when you're not looking at them at right-angles. Your brain processes this seamlessly, but as a non-artist you've never thought about this before, so you're going to be terrible at drawing objects from all kinds of angles. Shading is exactly what you think, but there's no "secret" to it; not only is seeing light and shadow (in an artistic way) hard in its own right, but just getting the shadow to look right on the damn paper is a skill unto itself. NO MATTER HOW LONG YOU SUCK AT THESE THINGS, DO NOT BECOME DISCOURAGED. This is the death valley of art. Every single artist just needs to hammer away at this stuff until they start to become better at it, little by little. When you first start drawing, you usually make surprisingly quick progress. But this stuff? SLOWWWWW. Just do it and do it and do it, over and over and over. You will improve, very slowly, until you're actually kind of okay at it. Do not give up. Do not get frustrated. Block all emotion out of your head about this stuff, because you will not feel anything positive about your skills in this department for a long time.

Step 5: You're an Artist! It turns out there's no "endgame" for art. Every artist thinks they suck until they die, but around this time you'll start realizing that you can kinda-sorta draw almost anything. From this point forward, draw the things you want to draw, and go out of your way to practice the things you know (deep down) you need extra work on. Improvement at this point is measured in years, not months, but if you stick with it, you will become "a good artist" by the end of your 10-year timeline. Of course, at that point, you'll still realize there are infinite ways to improve, and you'll realize you're going to be working on this until you die. But congrats, that just means you're an artist.



Q: All you talk about is pencil drawing here. What about painting??

A: Drawing with a writing instrument on paper is where you should start because it's super cheap, super flexible (you can do it anywhere), and super productive (the line is a fundamental artistic unit). You should start experimenting with alternative artistic instruments (marker, chalk, feathers dipped in lamb blood, whatever) near the end of Step 3. At the start of Step 4, feel free to start transitioning to other mediums, like painting (digital of physical). Painting is about "form" more than about "line," but you'll need the fundamentals you developed in steps 1-3 to paint anyway.

Q: What about cartoons/manga/anime/comic books/Tim Burton/Picasso? Those aren't realistic! When can I start doing stylized drawings from my imagination?

A: No matter how abstract or stylized something is, it always has roots in reality. That's why you need to never stop drawing/painting/etc. from real life and real photos. However, you can start experimenting with these fields in Step 3. Do not let them make up more than half of your time practicing, though.

u/dognitive-cissonance · 9 pointsr/exjw

Please do not interpret what i'm about to say as me being an asshole (although I often have been accused as such). I'm trying to help, rather than bullshit you with the equivalent of a participation trophy or a motherly pat on the back.

I'm stating this with love (although it is tough love): If I've ever seen someone that needs r/TheRedPill, its you my friend. I'm not saying that you should become an asshole or be disrespectful to women, but rather that you should focus on building yourself up in the same style. There is absolutely the capacity to be an alpha male within you. And that's what women will find attractive consistently. I'm not saying you should become a macho chump poser that demeans and disrespects women (that's not what a real alpha male does anyway), but rather that you should identify and adopt the characteristics of an alpha male that women find attractive and craft your own new persona. Root out the JW mindset and adopt a new one. Got me?

Its time to work on yourself rather than working on trying to get laid. Its time to grow a pair of balls. Now, rather than simply saying "grow a pair of balls", let me try to help and give some recommendations of how you might go about doing that.

Get a gym membership (maybe check and see if your university has one that you can use free), and try the Starting Strength program. See here:

Starting strength will make a man out of you. One tip: Don't use the smith machine. Use a real squat rack. Yes, its required. Yes, with barbells.

Read this book too, its a real eye opener for reading people (including women):

Read up on affirmations, how to make them and use them, and start using them DAILY, maybe even more often than once a day. You probably don't need a book to research this, a simple google search will do. Harness the power of positive self-talk.

The words you say to yourself in your head or mutter to yourself quietly when nobody else is listening have a huge effect on how you view yourself. And by extension, others (especially women) can sense how much value you perceive that you have, and often will treat you in accord with that value you project.

>My date was kind of rude as she actually took a phone call from her male friend within the first 10-20 minutes of the date, I think she was even flipping through Tinder as we were talking.

This should have been an early warning signal letting you know that she wasn't worth your time. She didn't value your time and presence (and that is likely because you didn't establish your own value to her).

>Of course my problems only make me feel worse as one of my roommates is like extremely fit black young Hugh Hefner. This guy fucks all the time, like weekly.

That is fucking hilarious lol, but I really sympathize with you. I'm sure its torture that he's getting laid every night and you have to listen to the fucking. Is this guy friendly towards you? Is he willing to help with your issues? You never know, he may take some pity on you and help you to work on yourself a bit. Even if he isn't, pay attention closely to his attitudes and interactions with women and with others wherever you can. Don't try to be an exact copy of him, but watch for attitudes, words, and actions that he manifests that feel right for you, and that you could adopt into your own new persona.

>I feel especially shitty as "technically" I'm not a virgin because I fucked who I thought was going to be a women through MeetMe, but it turned out to be a transgender dude, my fault I guess as further inspection of the photos made it more obvious. I was going to leave but I was persuaded by an offer of a blowjob. I figured this was the first time I was offered anything sexual and I was under a lot of family related stress at the time so I said fuck it and got a BJ, and had to reciprocate him in the backside.

This is some 4chan shit right here, so allow me to present the appropriate meme:

Don't beat yourself up too bad. Its behind you, and you never have to do this again if this type of hook up is not your style.

>So apparently finding a dude that wants to fuck is incredibly easy, finding a women in my case is like hunting for the holy fucking grail.

Yes, that's the honest to god truth when you don't project enough value to others. The only people you attract are people who are as desperate as you are.

>Don't get me wrong that all I want is sex, yes sex would be awesome, but I'm not afraid to be in a relationship, but at the same time I'm not going to turn down a hookup.

This screams desperation. You need to drop this mindset immediately. (Again, affirmations will help with this)

>My philosophy is just honoring whatever dating arrangement I agree to with a person, I have no religious reasons.

Again, desperation, compliance, submission. These traits will not attract women - at least not desirable ones.

>I tried talking to some women at parties, asked one to dance and she said no, even though she was standing against the wall not doing anything...

Again, you projected a lack of value, she judged you on the surface because of the lack of value you projected, and shut you down.

>...asked another how she was doing and she said good and that was it, and I had a little more luck at my last party as I got to help a girl with her Microsoft Access homework, we high-fived and were both wasted. I asked her if she was single and she said yes, but that she was just visiting and was going back home in a couple of days, so I just shook her hand and said it was nice we met.

That didn't mean she wasn't DTF my friend. She may have just been waiting for you to move on her. Lots of times, women are waiting for a man to confidently take charge when it comes to initiating sex. I'm sure nobody ever told you that (hell, nobody told ME that!!), but it is often true :)

>I'm giving this college thing one more semester before I call it quits. I'm not going to get another degree if it requires me to be miserable and single for another 3 years. I mean I'm charting into 30 year old wizard territory at this point and it scares the shit out of me. My friends have been trying to get me to move to Florida and I just may take them up on the offer.

Changing your location without changing your mindset is not likely to make a significant change to your circumstances. Although, it could offer you the opportunity to a fresh start, which could be helpful :)

>Any advice would be appreciated, I just feel the cult has taken a huge chunk of my life away when I was supposed to learn valuable social skills. I feel like a fucking child or an alien learning how to be human, even though I have been out of the cult for quite some time now, but have really only been away from toxic family for four months.

Yes, that's probably what happened. And its up to you to change it. Nobody else is going to do it for you. So stop wallowing in your own misery and change it. (Respectfully, with tough love, man to man.)

>My plan for next semester is joining some clubs, going to bars, and going more parties, and trying to strike up more conversations with women in class getting a gym membership, working on your self esteem and your ability to project your value to the opposite sex, and learning how to interact with women in a way that makes you attractive.

>If nothing happens in the second semester I'm just going to say fuck it and move, I'm at a point in my life were I'm tired of going out to eat by myself, shopping by myself, watching movies by myself, and doing everything else by my fucking self. All I did this Thanksgiving was sleep and get drunk. I've read all those articles about "loving yourself first", this isn't a problem about loving myself, I didn't do anything wrong. I'm just so fucking sick of being alone, I don't have a family, I have no one close to me.

I feel your pain man. Now is not the time to give up, but it is time to change your approach.

u/SRU_91 · 1 pointr/PurplePillDebate

I haven't even read the guys but from what I understand they are (a) MRA and (b) Red Pill. My ideology is (a) anti-feminist but also anti-MRA and (b) against both Blue and Red Pill for the reasons explained in OP.

And practical solutions are in some of the sections I linked you just have to know how to read the thing. I don't dwell on those subjects because I am not successful in dating myself so why would I give other people advice? What I do instead is share my experiences with dating and refer to some of the resources that seem helpful and critique the ones that seem less helpful. I believe there is useful stuff in what I linked you to. For example in the tri-fold solution:

  • learning how to lift with correct form and compound lifts (squats, deadlifts, etc.)
  • learning good fashion
  • learning how to cook, change tires, drive a car, know basic DIY
  • learning how to be financially prudent
  • learning how to be career oriented (i.e. have direction for the future) - and potential support with this (qualifications, references, etc.)
  • learning how to hold conversations with friends/family acquaintances as well as being able to talk to strangers


    (as a basis which everyone knows anyway)

    And the platitudes I critique but can work I guess:

  • online dating
  • clubs and societies
  • basic hygiene
  • getting out of the house
  • just being confident
  • just being ourselves
  • approaching women
  • having purpose and ambition in our lives
  • looking for self-actualisation in passions of ours that lie outside of dating women
  • going to bars and night clubs
  • hitting the gym
  • consuming works of art, literature or filmography by feminist women with strong female protagonists
  • seeing a therapist/psychiatrist/other related expert
  • *insert meaningless tripe*


    (note: mentioned in the link I sent you: "Yes ... plenty of us have tried [those things] and for those of us ... who hadn't ... well it is all here for them now.")



  • Concrete Advice

    At [[](*my community], we are open to concrete advice as opposed to nebulous inner-game concepts such as self-reflection and the other ones mentioned. For example, I the author of the GMGV Primer have read Mark Rippetoe's fantastic book "Starting Strength". Since some degree of muscularity is attractive to women, that is the way I workout now, but if you suggested that literature to me (without knowing that I had read the book), I would not have considered it platitude advice. Mark Manson's "Models" and Love System's "Magic Bullets" (guides to attracting women) are two relatively inexpensive books I have mixed feelings on (the content has pros and cons) but again, I would not consider that platitude advice. Lifestyle and dating tips that discuss the severely neglected verbal game element of approaching women are especially recommended because most existing "verbal game" is either just*

  1. gimmicky canned material and stupid "routine stackers" that are simply dreadful
  2. so-called "authentic" PUA that denies the legitimacy of verbal game because of number 1. but don't really consider alternatives because you should "just be confident" and let conversation flow freely or some bullshit

    Anything else that deals with propinquity (i.e. specific lifestyle choices that get you closer to women and not just "get a hobby, bro!" simplified bullshit) is considered concrete advice at GMGV. If you are reading this and you don't have any concrete suggestions (because not everyone does), that's fine. Just don't bother giving platitudes, or even advice really. Also, at this point most people normally say they have to know about you personally to give concrete suggestions but it's not true because the fundamentals for being attractive to a wide population of women are always the same click here.

    For that reason, you don't need to know the ins and outs of a person's life to give this advice. For example, Starting Strength is a sufficient foundation for the muscularity aspect (well the barbell training part, not so much for nutrition) - as an example. So far I have never encountered a sufficient foundation for verbal game. However there is a sufficient foundation for body language, which is SOFTEN (smile, open body language, forward lean, touch, eye contact but "nodding" not so much, I believe).

    But again, I really don't want to hear about nebulous inner game concepts unless it's to do with a specific discipline like positive psychology or stoic philosophy but with stronger empirical grounding. Because that stuff is interesting by itself anyway. If you have an academic interest in virtue ethics or Buddhist philosophy, Taoism or any related subjects I would love to learn from you.


    And finally:

    Here are some resources based on the central theme in the 'tutelage section' of the Primer.

u/IGaveHerThe · 39 pointsr/fitness30plus

In my opinion: Nutrition is for losing (or gaining) weight and making sure you recover properly.

Cardiovascular training (literally heart and blood-vessel training) is for heart, vascular and lung health so you can run after a bus or take a flight of stairs without feeling like you are going to die. It helps you think more clearly, resist depression, and reduces risks of some of the most deadly diseases (heart attack, stroke, etc.)

Resistance training is for gaining or maintaining lean body mass and strength. This helps you look better naked, keeps your bone mass up, and as you get older, helps you recover more easily from slips and falls. It also is good for your metabolism: it helps with insulin sensitivity and each pound of lean mass burns 2-3x as much energy as a pound of fat, and it takes up less space.

Finally, stretching/mobility training will help you keep your youthful ranges of motion, reduce stiffness and pain, and reduce injury potential.

You need a balance of these four elements to be truly fit.

To answer your specific questions:

  1. Yes, you have to maintain a calorie deficit to lose weight. There is no way around this. However, focusing on satiety (the feeling of being satisfied) will help. In my experience, foods that help with satiety without being high in calories are a. water b. fiber and c. protein. Fat can also help a meal stick with you, but a little goes a long way. Pure carbs (stuff with very little fiber) are tricky. This leads us to foods like lean meats, vegetables, fruits, and legumes (beans) and away from sugars and refined carbs (especially those with fat and carbohydrate together like cake, pizza, pastas, bread and butter, etc.). People have lost weight on all kinds of diets, so experimenting with what works for you is good. Tracking your calories and macronutrient (protein/fat/carbohydrate) intake with something like can help. There are more "advanced" methods but starting there can help your basic awareness of when and what you're eating, and you can start to make tweaks and adjustments from there.

  2. It's OK if you can't do purely running. Consider swimming, riding a bike, rowing or a low-impact alternative like an elliptical machine. If you have health insurance, consider seeing a doctor/physical therapist to give you specific ways to work with/around your limitations. Simply losing some weight can help with all kinds of orthopedic (bone-related) issues.

  3. Lifestyle advice. It's about taking small steps and building habits. I recommend trying to break a sweat at roughly the same time every day. Do something laughably easy at the beginning, like going into the gym and doing a warmup, then leaving. The point is consistency by showing up over time. Find a program or work with a personal trainer who will design a program for your abilities, and stick with it. I personally recommend something that you do either every day (7 days a week) or at least 5 days a week during the work-week (Monday through Friday), purely because it's actually easier than going 3 days a week because you get into a habit of going at a specific time every day. You will have to carve out time for this, there are no two ways around it, but that time can be early in the morning, during lunch, or after work. If you join a gym, find one between home and work to help reduce the issues of going before or after work. Finding a program you can do at home is great as well and can help with logistical issues. You want to be there when your baby graduates high school and college and gets married, so you're investing in your future. I highly recommend the books "Atomic Habits" by James Clear, as well as "The Power of Habit" by Charles Duhigg with more help on those fronts.

  4. Lifestyle part 2, diet. I recommend doing a weekly or twice-weekly session of food preparation. If you have a 5-day a week workout habit, you can set aside two days to go shopping for healthy food and prepare healthy food in bulk. (Slow cooker and sous vide can help here, as well as the basic stove and oven.) Having a good breakfast, lunch, and dinner (or whatever meals match your plan) on hand will reduce the urge to grab something quickly for those meals, and it will force you to plan ahead, which really helps you stick to those decisions later. If you have trigger foods (like chips or pastries or something) don't bring them into the house. This doesn't mean that you can never eat your favorite food ever again, but it does mean that you want to have 80% or more of your nutrition match the goals that you have. Then when you have the food you like, you will enjoy it more.

    Sorry, I started in on this post and it got away from me. Hopefully you find some useful nuggets in here.

    TL;DR: You need to have a balance of nutrition, cardio, resistance, and mobility training. You have to have a calorie deficit to lose weight, so focus on foods that fill you up without a ton of calories. There are tons of cardio options that aren't running that will be easier on your joints. Lifestyle change is about changing your habits. Doing food prep really helps make losing weight easier.
u/outalterego · 3 pointsr/FemdomCommunity

Imagine yourself as a queen and him as a high class pleasure slave who is of course well trained in the sensual arts (that's a given) but also intelligent and quick-witted, and expected to become proficient in any topic of conversation or activity that you might want to enjoy together. He should know exactly how you like your coffee. If your heart's desire is to have a worthy Scrabble opponent, then regardless of how he feels about the game, he better have all the legal 2-letter words memorized by Christmas. If you like a hot bubble bath before or after sex, he should be in charge of keeping the supplies stocked, drawing the water, lighting the candles, fetching your glass of wine, and sitting on the cold tile floor to read to you or provide interesting conversation while you soak. The onus is on him to think of or research interesting discussion topics or questions for your conversation, or to share with you something interesting he learned today. If you like massages, he should watch YouTube videos or check out books from the library until he is on par with a professional. If you love oral and his skills are somewhat lacking, he should be expected to finish reading Ian Kerner's She Comes First by the due date you assign, and there had better be plenty of highlighting and notes in the margins. You get the idea.

Another possibility is erotic hypnosis. Personally, I think /r/shibbysays has some of the best stuff out there. You could either use her stuff for inspiration to make your own recordings (or just get ideas for how to talk during your sessions together), or you could actually play her recordings while he is blindfolded and you act out what she describes. For example, in the first file in the good boy series, which is usually recommended as a starting point, she talks about putting her hand on the guy's shoulders and chest. So when it gets to that part you could actually put your hands where she describes and rub his skin.

She's pretty good about including language that would allow a guy to listen by himself if he wants but also leaves open the possibility that he is in a relationship and is being made to listen to them by his real life domina. One that comes to mind is "Slip into Slave Mode," which says something along the lines of "whenever I, or whoever told you to listen to this recording, says 'slave mode,' you will return to this place." That one also includes a visualization of a weighted blanket slowly covering the guy up from his feet to his head. I for one would love to be cuffed and have my partner slowly unroll a blanket over me while listening to this together. For good measure, maybe rub your pussy in his face when it gets to the part where only his head is uncovered.

If y'all are both comfortable with bringing Shibby into your bedroom, start with the good boy series. Listen to them by yourself before you play them for your man and think about what what position he should be in and what you might do to him while he listens. Next explore the wiki (the indoctrination series is also good) or just browse the subreddit for files that you think might work well for your dynamic. A lot of the files include references to "triggers" established in good boy and indoctrination, so that's why it's usually a good idea to do them first. Some of them involve chastity and orgasm denial, but most are just tease and denial, and it should be pretty easy to avoid the ones you don't want.

u/ino_y · 1 pointr/sexover30

well now I have some time so buckle up.

/u/helpwiththisproblemp is a nice guy. Not a full-blown neckbeard fedora M'Lady but he has that mindset. Where men are only in 2 categories.. Nice Gentlemen like himself, and the Assholes who get the women to lust after them. I cant guess how this mindset starts, sometimes they live with a disgruntled single mother or an equally Nice father, but they're genuinely convinced that by being Nice, safe, bland, trustworthy and a good provider is the exact path into a woman's panties. "I'm Nice. I have a good job. I bring home the bacon, why isnt that dropping her panties, why isnt she showing her gratitude by giving me a blowjob, why are all those Musician/Artist/Biker Assholes getting all the pussy??"

They repress their sexual nature and urges so they're not "creepy, aggressive or gross, not like those Bikers" and well, they get Friendzoned. But they secretly want to be sexually confident and lusted after.

They have an equally "either/or" view of women. They're either sluts or Nice women. Nice demure women. Nice ladies, ladies who dont act like sluts. Once again, they secretly want their demure wife to act like a slut! (Sluts are great btw)

So everything is a covert contract. He asked for a blowjob but I bet his behaviour right up until then was as a polite demure gentleman, treating his nice demure wife with respect, because he's a Nice man he picked a nice demure lady didnt he. He got all excited when she mentioned deep-throating him, because that's what he secretly wanted, but he never encouraged her to be slutty from them on, so she relaxed and forgot about it. "He never followed up, never rewarded me for sexual behaviour, never acted like a confident sexy beast, so whatevs".

Advice - that no-one ever likes, cos apparently 'being offended on behalf of someone else' is a new national past-time, as is 'asking for advice but crying over the harsh truths and not changing a damn thing'

Stop being Nice and having covert contracts. Read this book and before you flip your shit, read the blurb, it's not for Neckbeards.

If you dont like reading books, watch some episodes of Lucifer, it's hilarious because if the actor was ugly it would be creepy and gross. But he's handsome, well-dressed and dashing, so he's confident, sexy, alluring and bold.

If you cant be bothered with either of those, at least grasp that people arent either/or. Men arent just Nice or Assholes. There's a sliding scale. Women who are happily ravaging their men are with good guys. Good, sexy, confident, non-assholes. And by happily I mean we are genuinely happy. Content with how sexy, decent and safe our partner is. We dont complain so you dont hear from us? just from the unhappy ones who are with real assholes I guess.

Women arent evil for being slutty. I'm sexually confident and adore doing filthy things with my partner. and I clean up nice to go to dinner with his friends.

cc /u/drreedrichards it seemed like you needed some stuff too.

u/EntropyFighter · 3 pointsr/socialskills

Lemme put the TL;DR at the top. You need to start training with weights. Specifically heavy compound barbell movements: squats, deadlifts, overhead press, and bench press.

Longer version:

You have described several problems:

  1. Loneliness
  2. Self-esteem issues
  3. The need to see tangible results
  4. Your lack of self-discipline

    Lifting weights addresses all of these issues and a bunch more. But I'm not recommending you go in there and hire a trainer (too expensive) or just pick a routine off of (you're not going to stick to it).

    Instead I want to introduce you to a concept called training. Of course you've heard the term before, but do you know what it means? Most people exercise when they go to the gym. Chances are, when you think of working out, you think of exercising. Exercising is essentially punching a clock on physical fitness. It's also, in my opinion, a waste of time (unless it's just something you like to do). What do you get from it? Hot, sweaty, out of breath, and you feel like you worked out hard. What you likely didn't do was get stronger.

    To get stronger, you have to train. Training is essentially sticking to a plan that will get you to your goals. All I'm asking for is three times a week doing 3 exercises for 3 sets of 5 reps a piece. That's it. No running. No abs work. Hell, you don't even have to stretch. (Or if you enjoy those things, do any or all of them.) But if you can learn to do 4 lifts - squats, bench press, overhead press, and deadlift - you can gain several hundred pounds on your lifts in a few months.

    Yes. You. It works for everybody who does it. And there are people in their 80s on this program deadlifting 315 lbs. This is a program that literally anybody can do. With that being said, you'll want to study up on good form.

    The program you want is called Starting Strength. There's a book. There's a website. There's an app. There's a YouTube channel. And there's a subreddit, with an active Starting Strength Coach as one of the moderators. And there's a guy at the top of it all, Mark Rippetoe, to guide you through the whole deal.

    As you can tell from the title, this is for beginners. If you have less than a year in the gym, that means you. "Beginner" refers to your potential for gains, not how long you've been doing it.

    Speaking of, the thing you're going to love is what's known as "noobie gains". Literally every time you go to the gym you're stronger. You can progress 5 lbs. per visit per lift for months before your noobie gains give out. That means if you start with the bar (45 lbs.), which is as good a place to start as anywhere, 8 weeks later you'll be lifting 165 lbs. Four weeks after that you'll be lifting 225 lbs. That's 2-45 lb. plates on each side. And you'll continue to go up from there. For squats and your deadlift, this is practically guaranteed.

    It's hard to feel like crap about yourself when you can't stop getting stronger. I swear, it will feel like magic.

    I could talk about the program all day, but I'll just say one more thing about it and that's to give you the program. There's a A day and a B day. You alternate days. So week one is A-B-A. Week two is B-A-B and so on.

    A Day - Squats (3x5), Overhead Press (3x5), Deadlift (1x5)

    B Day - Squats (3x5), Bench Press (3x5), Deadlift (1x5)

    The first few weeks you're in there will be so quick you'll be in and out in 30 minutes. But as it gets heavier, you'll take your time more. Starting light (bar weight for everything except deadlifts... 95 lbs for deads) gives your body plenty of time to get used to doing the movements and will slowly strengthen everything in your body so you don't feel like you're dying from the start.

    Besides getting strong, you'll make friends. Contrary to what you may think, the world's best thing to see in a gym (besides fitness chicks) is a new guy with a plan. We only hate that guy if he proves to be an idiot. Just re-rack your weights and be cool and everything will go great for you.

    If you need a spot for the bench, ask for one. You'll get asked to spot eventually. It's just good gym etiquette to do it for other guys in there. It's an easy way to make friends.

    And if you're thinking, "who would want to be friends with me?", that question is kind of irrelevant if I just need you to spot the weights and tell me that I crushed it when I get finished. Which is all you need to do to make friends at the gym.

    If you set a regular time to go, other people are doing the same thing. Show up 12 times in a row (4 weeks worth) and see if you don't start making a few friends. You'll impress people with your work ethic. You're doing the big boy lifts, so others are going to watch your form and so on. It's not a big deal. And if you really work on your form, hand to God, within 3 months you'll have a bro lifter who can bench more than you squat explain to you why they can't squat right. Knees, or back, or something other silly nonsense. That just means they're impressed with what you're doing.

    Anyway, I've already written a wall of text. But trust me. You need compound barbell movements in your life. They'll do more for you in two weeks than literally anything else you could do.

    From there, that will make you care about your diet (are you getting enough protein?), and your sleep. That fixes more issues and before you know it, you're feeling like the man.

    The weights won't lie to you. When you put that second plate on and squat it, or the third plate on and deadlift it, that's something you can either do, or you can't. The fact that you will prove to yourself every time you're in the gym that you can? Well, that's empowering as a motherfucker.

    I mean, you can get lucky and make a lot of money. But you can't get lucky and lift a lot of weight. There's only one way that happens. You work for it and you achieve it. Once you conquer your body, it proves to yourself that you can do whatever the fuck you wanna do.

    If you have more questions, post them or message me. I'm happy to talk more to you about it.

    Now, let Mark Rippetoe teach you how to squat.
u/Retrosurf · 2 pointsr/GetMotivated

20 y.o. Here's a bit of mine

Make money- I want to open a surf shop in the town I grew up in. I want to be my own boss so I'm taking business courses and I'm trying to learn how to make my own clothes. I worked at a place on the boardwalk this summer and I had a chance to print t-shirts and see the process of the business. It's really not that hard and I think I can handle the business part of it. There's probably not a lot of money in it, but in the off season, I figure I can do something else to make money.

Keep in shape- Sorry man, but I don't think you can count going to the gym as a hobby. It should be more of an obligation really. You should enjoy it, but because of the good that you are doing for your body. Find a sport to play there's so many I'm sure you'll find one. Who cares if you suck, you will find people your level. I've been a tennis player pretty much all my life. It's a great sport and you only need a few things to have a great time. A racket, a couple balls, and a partner! I work at tennis courts in my town too and I see people in their 80's still playing! And like a bunch of other sports I'm sure, you can take lessons to get better! The gym is great exercise, but you should really try to get the thrill and competition of a sport.

Creative- This is my favorite one. Over the last year or so I've been going crazy trying out new ways to express myself and it's honestly the most fun trying to tap into it. I like music a lot. I spend a few hours a week just looking for new music. All kinds, have an open mind to new things! Then last january I said fuck it and bought a guitar. There's a bunch of free opportunities to learn to play whether its from a friend or online. This is the site I've been using and I'm not great or anything, but being able to (somewhat) recreate some sounds from my favorite bands is so satisfying. I've also started to take up drawing. This is the one that's most difficult for me because I was always aweful, but I bought a book to teach me. I've realized you're going to need a lot of help if you want to learn or do something. And that's ok! I've been taking videos and playing around a bit with some old editing software I got a few years back. Unfortunately this hobby is halted, since my video camera was confiscated at a concert :( Also, I'm not really sure which category this fits into, but I've taken an interest in cooking as well. Nothing crazy, but I can put together a few decent and healthy meals. It's really rewarding making a meal for yourself. Even more-so if you share it with friends for the hell of it!

Dude start trying anything. Really anything you can think of that you are interested in. You'll realize things aren't really as hard as you think. If you aren't good at something, well that's ok too. Just find something that interest you and work towards it and slowly get better. Cut out time wasted and put it towards creating something that you can be proud of. It doesn't even have to make money.. any skills you learn will benefit you in some way, or at least give you an outlet to clear your mind. Play around with life! Test yourself and see what you can really do. I might be going a little overkill. I almost feel like I'm hitting a mid life crisis already hah but you should really experiment, it's a hell of a lot of fun. And not I'm not speaking directly to you, but generally people just need to cut out some wasted time being distracted watching tv to do something that requires thinking and action. At least substitute some tv/movie time for reading. It gets easier to find things that interest you once you get going! I'm sure you'll find something man just remember to have fun with it. Hobbies are hobbies, thats all theyre for, so don't worry if you think it might not benefit you in some way, because it will.

Edit- Formatting

u/Elendira · 1 pointr/getting_over_it

To begin...

I'm glad to hear that it sounds like I haven't offended you with trying to be silly, as that wasn't my intent. :/ I was pretty worried about it, honestly, and if I did and you're just not saying, I really do apologize. I'm in a very similar ship, so I meant to commiserate. My self esteem is getting better, but it's still quite low and fluctuates a lot.

> It's also very hard to try and be positive about myself when people treat me like I'm garbage. It validates my core negative beliefs about being unlikeable, socially inept, unlovable and just plain worthless and undeserving of love. :s

Sadly, I understand that all too well, and I unfortunately don't have any real advice to you other than that you have to keep trying to counter those thoughts. Which, if you're feeling like I've felt, can be one of the hardest things ever. What I had to do was say positive affirmations to myself religiously in the shower, OUT LOUD. Every day, over and over again. They were really uncomfortable, and I thought they were hokey, but they helped. I couldn't really face myself in the mirror and do it, and the noise of the shower helped me feel less self conscious. I also had a therapist that would harp on me (kindly) if I didn't do it, so I eventually did it regularly.

However, I understand completely how hard it is to say these things when you don't feel like they're true. That's why I was trying to focus on the logical aspect. Heck, I know that what other people think only affects me if I let it (technically), and that what really matters is my own self esteem, but that's really bloody hard to translate into reality.

As for failed relationships or whatever, you have honestly no real idea what happened there. I'm sorry to be the one to inform you, but you're not a psychic. :P I pretend to be too, and I have to remind myself all the damn time that I don't honestly know what is going on in someone else's life. I'm pretty good at reading other people and picking up on non-verbal cues, but if someone is upset, I jump to the conclusion that it's because of something I did. I still do, but less than I did. Really, just being aware of this mind-reading is the most important thing you can do. Actively combating takes time, but it CAN be done.

Take a moment to really think about it. Have you ever been upset or grumpy at work or around others because of something totally unrelated? I certainly have. I've had people think I was upset with them because of a face or visible discomfort, when all it really was was an upset stomach. I've also flaked out on plans with friends simply because I was feeling too depressed to go out that day, but I was too ashamed to fully communicate that fact to them. They thought I was upset with them, but really, it was just a personal matter. Is it not fair to think that that could be the case with some of your interactions with other people too? Sadly, some of your suitors could have been scared away just because you maybe were anxious and your body language was screaming, "Don't come by me!" As such, I stand by my statement that your first and most important step would be to try to improve your self esteem/anxiety.

Yes, it's a long process. Yes, you will fail. Again, IT'S OKAY. It's totally okay to mess up. It's TOTALLY fine. It has NO reflection on your worth as a person if you mess up. I am straight up giving you permission to fail. I hope when you're a little stronger, you can give yourself that permission too!

As for what particularly happened with Nick specifically, I honestly have no idea. I'm guessing it's just that he probably felt like he was putting himself out there and didn't understand your more subtle signs that you returned his affection. :/ Sadly, some people just don't seem to be patient in matters of love, but that's okay. Honestly, it took a really long time to get with my fiance-we met online, we're both shy, and the only way he ever found out I liked him was that I got super emotional one day and just flat out told him in an email. (I was sick of him telling me about all his little crushes actually.) Then, I literally ran away to a friend's house several states away for a mini-vacation. X_X Luckily, he was my best friend by this point and things didn't get very awkward after my confession. He didn't realize how much I meant to him really until I ran away either, so I guess it worked out in the end. It wasn't exactly the best response I could have had, but I needed it at the time.

My point is that love is a tricky thing that cannot be easily evaluated. Sometimes you just have to accept not knowing as the answer and try to move on. Sometimes, you have to go way outside of your comfort zone and just be totally direct with someone.

Of course, I felt the same about not finding anyone, and it actually was about 5 years from my last real relationship. I sort of just tumbled into it on accident. It's a bit trite, but hobbies are a great place to find like-minded people. With the internet now, it's a lot easier to find others that enjoy the same activities. I happen to be a big dork, so my SO and I met on World of Warcraft. It's an LDR, but we've met in person a number of times, and I'm positive that he's the one for me. This is not something for you to use to flog yourself with if you're feeling that compulsion (as I would if the situation were reversed)-it's to give you hope!

As for meditation, I liked Headspace a lot because it's very novice-friendly. There's a lot of positive affirmations in it, and you start off with only ten minutes a day. If you need "assistance" finding the files, let me know and I'll give you some pointers.

I would also like to recommend this DBT workbook, as I found it to be helpful for me in starting to overcome my default negative thoughts. I think DBT works a little better than CBT in that regard, and it 's written in such a way that is very forgiving.

As strange as it might sound, The Now Habit helped me a decent bit with my self-esteem too. It focuses on procrastination, but procrastination stems from perfectionism/fear of doing poorly.

Anyway, I'm not a therapist. I've been to plenty throughout the years, and I've been in this boat before. My best advice to you is truly to try to focus on caring about yourself. When you can love yourself more, when you can feel worthy of love, that is when you make the connections that last a lifetime.

The only constant you'll ever have in this life is yourself. I'm not saying you're doomed to go it alone, just that if you can learn to at least tolerate yourself, it'll make the going a lot easier. :)


u/jplewicke · 9 pointsr/slatestarcodex

> If this goes on for days, I progressively end up in a more depressed/helpless state. Making decisions gets difficult, even something as simple as picking an item off a menu. Confidence at work or with any other hobbies gets low enough that I stop doing or achieving much of anything.

This is a very classic "freeze" response, also known as dissociation. Basically, if you're pushed into fight/flight long enough or persistently enough, you'll start freezing up. That makes it difficult to concentrate, difficult to connect to other people, and even difficult to take concrete actions like picking something up. It's one end of trauma-related emotional disregulation, with the other being fight/flight/anxiety/anger. It's very common for unchecked verbal aggression to put people into a state like that. It's also decently likely that you have some form of trauma history that made you more vulnerable to freezing up like that, and that made it difficult for you to get angry enough to push back when she becomes verbally aggressive with you. I'd suggest reading In An Unspoken Voice to learn more about how we get stuck in these fight/flight/freeze responses.

> The only consistent recommendation I see, besides medication, is DBT. What does that mean, for someone without good access to medical care? Buy her a workbook and tell her to read it?

You could try to do that, but it doesn't sound like she has either a lot of insight into how her behavior is harmful or a strong motivation to change. Most likely the best thing that you can do is to focus on improving your own ability to advocate for yourself, to understand what's happening in this situation, and to get clarity about your own conscious and unconscious patterns of thinking and reacting that keep you stuck in this situation. This is unfortunately a "put your own oxygen mask on first" kind of situation.

On another note, DBT might actually be really helpful for you. One area it covers is emotional regulation, or learning to work on your emotional responses so that you can respond in a way that fits the situation. That includes learning about the different basic emotion types (Anger/Shame/Fear/Guilt/Envy/Happiness/Sadness/Love/Jealousy), learning when they fit the facts of a situation, and also learning to recognize when you're skipping past the appropriate emotional reaction and jumping to another one. For example, it sounds like when your wife gets angry at you over nothing, you skip right past anger and into fear/shame/sadness. If you can afford it or are covered, it might be worth finding a DBT therapist to help you work on that. If you can't, this is the workbook that my therapist used with me.

> What can a person like me do to be more resilient to verbal aggression/abuse?

Learning to set boundaries for yourself is probably the key skill to get started with. There's a lot of confusion about boundaries out there. Sometimes it sounds like it's something that other people are responsible for ("they should respect my boundaries"), or that they're responsible for enforcing them once we communicate them. Instead, a boundary is an action that we commit to take ourselves in order to maintain our self-respect and ability to function. It could be something like "If someone is yelling at me or calling me names, then I will leave the area." Frequently, it's helpful to have a series of planned boundary-maintaining actions so that you don't have to take drastic action off the bat -- so in that example, you could plan to first ask the person to stop yelling, then leave the room if they won't stop, then leave the house if they follow you and keep yelling, then stay somewhere overnight if they keep yelling when you come back, then move out temporarily if they won't stop when you come back, then end the relationship if you can't come back without being yelled at.

Other times when people talk about boundaries it sounds like we should just already know what our boundaries are, when in reality it's a really messy difficult heart-breaking process to discover first that something is unacceptable to you and then that you're willing to enforce a boundary to prevent it. There may be significant new emotions or memories of past situations that you have to become comfortable with in order to -- for example, you may be deeply uncomfortable with the idea of being alone or seeing someone else suffering when they claim that it's your fault, and it may be related to difficulties in your childhood or past that seem similar.

There's also a significant chance that you've internalized at some level that you're responsible for your wife's emotional reactions, or that you've done something wrong, or that this is normal. So there's a significant ongoing rediscovery aspect where you'll revisit past relationship conflicts and go "Wait, that's not my fault at all!"

The other thing you can do is to look into whether you might be exhibiting codependent behaviors or in a trauma bond. No More Mr Nice Guy is a decent guide to working on this, although it's a little bit much to handle if you're still in the thick of it emotionally. You can also read When I Say No I Feel Guilty.

> What's the healthy approach towards me getting some kind of support system/network?

Keep on posting here regularly, for one. You can also take a look at /r/Divorce (I've been assuming from the comments from your friends that you're married -- apologies if I'm getting that wrong). I assume you've seen /r/BPDlovedones/ , but it might be worth reading their recommended resources. Work on exercising regularly, see a therapist or couples therapist if you can, try talking to any friends you have that haven't been dismissive before. A light 10-20 minute/day meditation practice might be helpful with learning about your thoughts and emotions, but there can be complications with large amounts of meditation if you have a trauma history or are in a stressful situation (see this book and this guide if you want to pursue that route).

Also just spend time with friends and social groups even if they're not resources for talking about your relationship. It can be important to remember that social relationships can just be fun/light and to provide a counterbalance.

> So... is there any healthy middle ground between "suffer through it, don't talk about it, relationships take work" and "run away, AWALT, borderlines are crazy"?

The middle ground is to work on asserting your boundaries, understanding and accepting your emotions, building a healthy set of activities and friends, and getting clear on what's acceptable to you. If it turns out that you have a trauma history, then something like somatic experiencing or EMDR can help you start to heal from that and become more confident. As you become more confident and assertive, set more boundaries, and work for the kind of relationship that you want, then you'll see w

Do you have kids together? If you don't, the standard answer to just go ahead and leave is probably "right" -- there doesn't sound like there's much good happening for you here. But the problem with "just leave" is that it's all or nothing, and doesn't provide you with an incremental path to building the skills and self-knowledge that will allow you to actually leave.

If you do have kids together, then "just leave" is definitely a bit tougher. This sort of situation can be a kind of crucible that allows for immense personal growth, or can just beat you down.

A couple resources that may help with clarifying the stay/leave question are:

  • Too Good To Leave, Too Bad To Stay. This is a workbook with diagnostics for what relationships can be fixed vs should be ended. If you read it and your answers come out as overwhelmingly leave, then do your utmost to just leave, even if you have to move out while she's not there, text a breakup note, and ask your friends to help you.

  • Wired For Love discusses attachment theory and adult relationship dynamics.

    Good luck and we'd love to keep on hearing how you're doing!
u/AnEpicSquirrel · 2 pointsr/DnD

I agree with /u/Ryngard on checking out 5e, but that's up to you as a DM. The curve on "ease-of-learning" is noticeably different, so for beginners playing tabletop games, it is a great gateway. You could always look around for the information you need while the 5e handbook ships, but definitely get it, it's perfect for beginners. There are tons of 5e resources online (not just the pdfs that are not allowed on this subreddit; which I am not recommending here), that can help you with how to make a character, spells, stories, etc; made by other players.

As a DM, regardless of version, I'd make it clear on a few things:

  1. You are the DM, and the book is a guideline. You have the final say. This is important because sometimes the way you want to run your campaign will not follow how the book takes things; and that is okay. The story is yours, so take their concerns to heart, but be stern when it comes to them wanting something unreasonable. With that note, homebrewing is alright, but look out for OP things that sometimes don't reveal themselves until they level up a little more. It's okay to negotiate a nerf when homebrewing is involved.

  2. Make sure they have their character fleshed out before you play. It is a HUGE time-waster for new players to make characters while others and you want to play. Making a character is a personal experience, and by all means, help them, but don't make every wait on game night; they can join later at any time and simply learn how the game works if they aren't ready.

  3. Roleplay, roleplay, roleplay. Your character may not know what you know, including what is discussed outside of the game. The players and you must try their best to stay on top of not using knowledge that the character has no idea of, as it breaks, well, character. Also, if someone's character goes outside of their alignment, you can refuse to allow it, or have penalties, as a "Good" character most likely will not hold someone hostage, nor would an "Evil" character rescue a random peasant in need... without reward or personal gain being announced. It helps people get into the game, rather than play as themselves, which is nice, they're your friends, but it makes the story flow less emotionally, as the characters no longer have their own personalities.

  4. Have the game cater to everyone's interests, but do NOT spoon-feed one person's interest. This means that some people are in it for combat, others for story, and maybe even comedic moments. Set up your story to possibly include all these points, but do not bring up one thing over another to the point that someone who wants one of the focuses in the game get left out, or become the "main" character constantly. It is a difficult balance, and being new you guys might not know what you want, and that's okay, but find a balance that satisfies you all.

  5. It's okay to have things unanswered. You are telling a story about the lives of adventurers who most likely move from village to village. There will be things they miss, and things failed in terms of success. That is part of life and the game. This tip also extends into general storytelling. Don't throw out all the info at once, as players need something to draw them in, and mystery is a great incentive. As they dig deeper, the puzzle pieces start to fit, and eventually... bam, they've understand what was going on, and now based on their alignments, they have a few choices laid out for them. It keeps the longevity of your sessions, and things interesting.

  6. It's alright to have characters die due to difficult combat, but doing so frequently can make them lose attachment to characters, and become apathetic. Just try to keep them interested and invested, but do not make it too easy where they feel no challenge. It again, can be a hard balance, but they should not want to die, nor feel that "meh, I can just be a blank next time, give me a new sheet". Apathy can make players lose interest from what I've seen, but I'm sure they'll like their characters enough, due to them being their first ones.

    EDIT: Also, the player's handbook for 5e (with Prime, huzzah!) is half-off at the moment:
u/Sorcerer_Blob · 5 pointsr/DnD

Hey there, and welcome to the wonderful world of role-playing and D&D!

First off, playing online is pretty awesome. It is almost as good as the real thing, that is, playing in person. If you ever get the chance to play live, I highly suggest doing that.

In the meantime however, you are in luck! The latest edition of D&D is just now releasing!

A few weeks back the Basic D&D rules launched for free! Basically, it's the bare minimum rules you need to know to play and run D&D. Really the only thing it's missing right now are some monsters, but it should be updated with those (and some Dungeon Mastering advice) come August.

Additionally, the D&D Starter Set just launched this week! It's a great way to get into the game for a cheap price point. It comes with some dice, a great adventure, some of the basic D&D rules, and some pre-generated characters. Essentially everything you'd need to get some friends together and play D&D for a few weeks. I highly suggest picking this up if you are new to Dungeons & Dragons!

If you find that you are and your friends (either online or in real life) love the Starter Set and want more, you are in luck. In mid-August, the first of the three core D&D books releases. This is the Player's Handbook. Like I said before, when the Player's Handbook (or PHB) releases, Wizards of the Coast has said they will update the Basic D&D rules that are online for free with some extra content. So everyone wins, basically.

Anyways, if you have anymore questions, feel free to ask.

Good luck and happy gaming!

Edit to add:
If you are looking to find players or even a group, the best place to go are gaming stores and comic shops. Likewise, many areas have meet up groups online through sites like and others. If you have friends that enjoy fantasy movies like The Lord of the Rings trilogy or the new Hobbit movies, recruit them to play with you and maybe even take on the role of the Dungeon Master!

u/SofaAssassin · 1 pointr/cscareerquestions

> I just realized it's 900+ pages, sheesh. Is it still an easy book to pick up to learn the language?

It's still useful for learning it. If you want something more brisk, try Accelerated C++ which clocks in at under 300 pages.

> I just had a semester using Scheme and I really had a fun time using functional programming. It just feels more structured, but I don't know if that's a misplaced opinion.

> How easy would it be to transition from Scheme to Scala or Clojure? And can interesting projects be made in those languages? I only ask because I've tried to figure out what I could make with Scheme and came up empty-handed, so I'd love to find a functional programming language I can make something cool out of.

Functional programming is a great paradigm, makes a lot of things simpler. The languages also tend to have really awesome features.

Once you know one functional language, a lot of the core concepts carry over to other languages. Scheme and Clojure are also Lisp dialects so they will look very similar. Scala can be used in a very OO way because it was designed to be a Java replacement and to be easier to transition to.

There are certainly a lot of cool things out there written in functional languages. The Haxe framework is written in Ocaml. Netflix wrote their open source telemetry system in Scala. Clojure is used for web services and web applications, and there are some cool open source projects written in Clojure like the Light Table IDE.

> Is there a reason people want to use Haskell?

It's one of the biggest names in functional programming and is known for being a major source of research. It's older than a lot of the newer functional languages like Clojure or Scala, plus promises things like speed, easy concurrency, and doesn't require additional stuff like a Java runtime (like Scala or Clojure do).

> Speaking of FP languages, what're your thoughts on OCaml? I know Jane Street uses it, but that's about it, haha.

The ML family of languages is probably my favorite functional programming family. I learned standard ML in college and have also used F# a lot, which is derived from OCaml. I haven't used a lot of OCaml directly but I imagine it's awesome since I love f# and standard ML.

> Damn, never heard of NIST, it sounds like a fantastic resource! I haven't even seen it linked on the sub before (which, given how often people ask for resources for DS&A, you'd think it'd come up.

It's really more of a basic cheat sheet without a lot of information. Years back when I did more DSA type interviews, it did help as a simple refresher.

> Do you by chance know anything about C and learning it via books? If so, do you think The C Programming Language is a good starting point?

I love C (but it and C++ have been replaced by Rust in my life now). That book (the K&R) is the de facto book for C and one of the best technical books I've ever read, it's very concise. However, it was also written thirty years ago so while it's still mostly useful, it serves more purpose as reference than as a "learn C" book. Though I also learned C from the book and then used additional resources to learn about the newer language features that came out with C99 and beyond.

I'd say give K&R a try - if you don't like learning from it then try Zed Shaw's Learn C the Hard Way which is a free eBook/website.

u/Vetches1 · 1 pointr/cscareerquestions

> Languages generally speaking have a documentation which specifies itself. That's the spec for the language. Someone interested in creating a compiler, interpreter, or some sort of analyzer, and so forth for the language needs to know how the language is supposed to work. The spec is the document which talks about that in detail. It's like the official documentation if you will.

Okay, that makes sense; so the spec is a document explaining the nuances and how the language works?

> "Minimalist" is not very exact terminology. It means the language has a small set of concepts and things that you can use. The nice thing about scheme is that from this small set of features, you can do tons of stuff. It usually implies a small set of keywords, but that's not just it. Generally speaking, it has a small features set, which isn't very exact terminology either.

That makes sense; so Scheme is minimalist in one sense that it might not have a ton of built in keywords, but with what it does have you can create a lot from it?

> These weren't courses per se. I did this before getting into college. The C programming I was talking about came from K&R2 ( and looking things on the web. I think it helped. Not sure how much. I don't think the PHP web dev helped.

That book looks very interesting, I might take a look at it later on!

I only ask if the experience helped because I mainly want to see how ready I can before I go into SICP without spoiling myself, as I believe SICP is a great place to teach people concepts for the first time (even if they're not totally understandable, like in my case).

> I have no clue what is the better choice in here. Try both at the same time? I think MIT 6.00 even uses "how to think like a computer scientist" (the book I mentioned before).

Duly noted, might look into the lectures before I start SICP.

> Both. It's meant as an introduction to programming and computational problem solving. In one of the lectures I think the professor talks about how people do better in SICP if they take this course before.

If you don't know this answer it's totally fine, but does the lecture prepare for the content in SICP and how to solve the accompanying exercises?

> That is true, but there is more to it than that. Each language has its ways of doing things. When people are making new languages, they're highly influenced by other languages. To the point that most languages I've seen have nothing new but a few pieces, and most of everything else is just a "rehash" of ideas from other languages. Generally speaking, you'll see a lot of commonalities among several languages.

Can these commonalities be seen amongst different paradigm languages as well? Like are there commonalities between, say, Python and Scheme? I only ask because for example, I never saw the use of car and cdr as ways of accessing elements of a list before, let alone the heavy usage of recursion in a language. But perhaps that's because it's my first functional programming language

> It is true that each language has its style, but that style shares plenty in common with other styles from other languages. There will be things in common, and very rarely stuff you learn in one language won't help you in another language.

So even though there's different paradigms amongst languages, there's still quite a lot of shared aspects between them?

> In the end, you'll have a bag of cohesive programming techniques. That's not really language dependent as much as some people will tell you. Languages aren't that important as far as I can tell. I remember, back when I was starting to learn how to program, giving real importance to programming languages. Maybe they are really important, but it doesn't seem to me like they are anymore. The programming techniques and ideas behind them are though. The language is just a "conduit" by which you apply those techniques to solve problems, which has its importance but it's greatly exaggerated by most programmers if you ask me.

So it's more so the ideas that are developed through the languages that are important rather than the languages themselves?

> In fact, in SICP, you'll end up learning that a way to make problem solving more approachable is to make a language that is a better means to apply the programming techniques that you think help in solving the kind of problem that you want to solve.

That sounds incredibly interesting. I know I'll learn more once I read it for myself, but do they suggest that the way of approaching a problem is to define techniques or functions within the language itself that would help better solve it, or do they imply to switch languages entirely to solve it better?

> Nowadays, some languages are nice enough that you'll be able to do that by just cleverly designing a new library or framework. Making new languages is still valuable though, and in my opinion, underrated.

When you mean you can design a new library or framework, do you mean creating a whole new sub-language so to speak to deal with the problem, or do you mean just creating new functions that meet the solver's needs and isn't readily available (i.e. the goal the user had in mind isn't implemented in the language, so the user instead creates it themselves)?

In what ways are creating new languages underrated? Do you mean the experiences one has and take away from creating one that are underrated?

> I didn't see it emerging either. I started to study programming and CS in 2006 (I think). All I've said is based on "stories" and reads that came up while I was reading books, reading blog posts, talking to people, etc.

Yep, that's pretty much how my background about the older days of CS is built. Although I suppose it's the only way to learn about a time before ours in which CS was emerging.

Another standalone question, if you don't me asking for your opinion: I currently have a book on data structures and algorithms (aptly called Data Structures and Algorithms in Java by Robert Lafore) that I plan on reading. Would it be in any way detrimental to read that book, or at least begin it, before delving into SICP, and once I've completed my next CS course (taught in Scheme), then begin working on SICP? Again, I only ask because you're more experienced and I'd like to hear your thoughts on this matter.

u/sockaddr · 2 pointsr/scoliosis

No problem on the stalking, haha.

Those are good questions about lifting. I've also done a lot of googling on the topic and come away frustrated. I started about 3.5 years ago, and I train mostly for strength. Overall, I think it's been a good thing for my scoliosis. It can be frustrating - lifting is harder when you don't have a straight spine supporting the weight. I've been able to get decently strong and continue to make progress, though (495x1 deadlift, 335x5 squat, and 210ish bench). All my lifts continue to go up each week, although I have had injuries and tweaks along the way. I can't say if it's due to my scoliosis or not, so I just deal with them and keep training.

I think the way scoliosis will impact lifting will be a little different for everyone since everyone's curves are unique. For the most part, I can perform the lifts with minimal modifications. Bench is hard for me because my right shoulder comes out at a weight angle due to my thoracic curve, but I'm still able to get stronger.

I think lifting has made my curves less noticeable, but it's really hard to say. Ultimately, a body with muscle on it is going to look better than one without, and being stronger is going to be better than being weaker. I do struggle with body image issues with the scoliosis from time to time, and lifting has been very helpful for that. I have a lot more confidence, both from having muscle and from knowing that I'm stronger than most other guys walking around on the street.

Are you familiar with the Starting Strength program? I would highly recommend that program. It's a basic barbell program, and it's the most effective way to get stronger. There's a large community on the starting strength forums, which is a great place to ask for advice and post form checks. There are a lot of things grouped under "Starting Strength": "the program" I just mentioned, the methods of executing the lifts, weekend seminars put on by Mark Rippetoe, a coaching certification, an app, an online coaching service, and a series of books. Sometimes starting strength gets flack from bros online, but I would ignore that. Just go to the forums and look at people's training logs - you'll see some big numbers achieved relatively quickly.

The 2 big things for success in the gym are proper form and adhering to a program without giving up or adding stuff to it. For form, the best thing you can do is find an "SSC" (Starting Strength Coach) near you and schedule a training session. They'll teach you how to perform the lifts safely in accordance with the SS model, along with any modifications you might need to make due to your scoliosis. For example, with a lumbar curve, you may have an effective leg length discrepancy and need to shim one of your shoes. They'll be able to tell you that. They'll also be able to help you get started on the novice program.

To find a coach, you can look here:

Rippetoe himself also puts on seminars, which I mentioned, which you can find a list of here:

I also mentioned the starting strength books. The first one to read is "Starting Strength: Basic Barbell Training" (abbreviated as SSBBT). You can get it on amazon here: This book covers how to perform the lifts, and briefly talks about the novice program toward the end. The book is very dense, and I wouldn't recommend reading it cover to cover at first. I'd read the "how to" parts for each lift first, then go back and fill in the blanks.

The next book is "Practical Programming for Strength Training" ( This covers how to structure a training program. It goes into more detail on the novice program, then lays out different types of intermediate and advanced programming. This one isn't as essential to order right away - you can find the general novice program here: (scroll down to "The Program").

I guess that was a long response. Hopefully this info is helpful for you or anyone in the future who might find this thread. Feel free to PM me if you have any questions. Depending on your location, I may be able to recommend a coach or gym. I wish I knew all of this when I was your age, so don't hesitate to get in touch.

u/CorporalSpoon31 · -1 pointsr/xqcow

Firstly, I wanna say sorry for your losses. You've had a rough life but good shit trudging through it 3Head, although you've arguably lost the best years of your life (Chester Bennington Who? Robin Williams Who?)

Now, I don't give a fuck if you were #1 or #777 in your programming class at your trashy school. You didn't get my point that however well you do in school doesn't matter, because regardless, you're bounded to solely that school, you're not nationally or internationally ranked (Being an analogy Andy, the #1 runner in my high school runs a 16:30 5K which is pretty good, but is no where near the international Olympiad level; the same is true with you and your trash-tier programming ability, you haven't accomplished anything in that field outside of school [and don't blame this on your illness, if you realized you were intelligent in high school, you would've been something back then, before your chronic disease emerged])

Also, those are the most fundamental basics of a multi-paradigm programming language, I learned Object-Oriented, exception-handling, recursion, generics, use of external libraries, methods, events, pointers, e.t.c. in 7th grade and there are hundreds of kids who'd done so at a much earlier age than me. Anyone with a somewhat quantifiable amount of intellect can understand that shit, that's the basics. You never truly got into programming, I can tell, as if you did, you would've instead listed the more complex theorems that actually require intellect to be able to derive and truly understand (algorithms and data structures) such as Computational Geometry and Shortest Path Algorithms(BFS, DFS, Dijkstra, Floyd Warshall, Prim, Kruskal), Computational Number Theory, Hashing, Trees, Data Structures(segment tree, fenwick tree, disjoint sets, Heavy-Light Decomposition). The list is endless; although you're 30 and pretty far behind, if you're at all interested in truly understanding these algorithms, their proofs and derivations (if you want to work at google, apple, e.t.c you need to learn), here's a link to an introductory book written in Pseudocode:

(I may be immensely toxic, but just trying to help you out if you're still trynna stay on the CS path)

Also, you don't understand the problem-solving I was referring to. The questions you are referring to, given in school, require very basic problem-solving skills that don't truly captivate the beautiful art of problem-solving. True problem-solving is when you're faced with the most difficult and complex ad-hoc (One subdivision of programming problem topics contains problems for which there exists no general technique or algorithm, i.e. no well-studied solution. These are known as ad*-hoc problems. Each* ad*-*hoc problem is unique, and requires a specialized approach) problem ever, where you have to manipulate it to devise an innately beautiful algorithm which beautifully merges a bunch of previous theorems that seem unrelated to creatively take a shortcut to the solution in a truly brilliant manner(this is easy to explain to others who understand problem-solving, but it's kind of hard to generalize it so sorry for the butchered explanation, here's a link that you can explore to learn more: )

Here's a programming question (from the final round of the USA Computing Olympiad for the brightest programmers across the nation, which I successfully solved). It may seem simple at first due to its short length, it's actually immensely complicated and requires immense critical thinking+IQ to come up with a unique algorithm which solves every possible test case; in my eyes, it truly captivates the art of problem-solving. If you're at all interested in seeing it here's a link: (and don't lie and tell me you solved it, I know you can't because it requires knowledge of the complex Gauss-Bonnet theorem in topology/computational geometry taught far after Multivariable Calculus: )

TWITCH: And no, your remark about finding another way in was pretty retarded, of course, everyone would think of doing that, that's simple ban evasion. I'm obviously not gonna create a new twitch account to fucking chat, I already stream myself programming on my main twitch account so I'm not gonna go and make a whole new account to just chat, I'll donate someday and get unbanned from Felix's channel. Furthermore, I'd have to resub and build up my sub-streak all over again so not worth.

Also, I highly doubt I would've committed suicide if I were in your shoes because I would still have something going for me, the fact that I can and will make a meaningful contribution to society. And I know why you "weren't good enough for your interview," because you couldn't problem solve, most interviewers for companies such as Google and SpaceX ask questions that are slightly easier than those found in competitive programming competitions.

And bill gates and zuckerberg were dropouts because they were entrepreneurs, they could've easily finished college but it wasn't worth it because their companies started rapidly growing; they have skills that you don't, you're just a random dropout for no reason, most dropouts that make it big drop out because they see another vision for themselves. The main reason I want to go to a top university isn't for the education, I could learn all that I want from edX and Coursera, it's to meet others top students in hopes of creating our own successful business from our dorm.

If you're still interested in becoming a dev, hope that helped (although I'm half your age so I don't see why you'd listen to a zoomer like me regardless).

Edit (Didn't see your edit, I'm boutta go hard for disrespecting me): You're fucking retarded lmfao, your reddit is filled with gaming related shit (you're 30 and you game for a living, sad life) so I scrolled down to see the first post not in r/xqcow or r/letitidie and your age was there, I didn't see any sad shit you posted.

And yes, I do actually help others and inspire those invested in my field that I find in school and other communities, if I realize that they have recognizable talent and intellect to be something, but I'm not gonna be a soyboy cucklord who tells someone they can do it when they're realistically not smart enough to, I won't hold their hand and tell them they're worth something when they're really just an average andy that doesn't have the unique ability to ever do anything meaningful; I'll gladly shit on others who aren't smart and sit in a corner studying all day for the SAT because they can't naturally do well; I'll gladly tell them to kys, as talent outweighs hard work heavily.

I'm not privileged, I started at the fucking bottom (Kapp -> low middle-class) and reached the top myself, if you can't do it and are complaining, then natural selection retard.

(Also, Iostux is dogshit, I'd roll him in a 1v1 Kapp)

u/drdough · 1 pointr/math

Sure, there are a few directions you could go:

Algorithms: A basic understanding of how to think about and analyze algorithms is pretty necessary if you were to go into combinatorial optimization and is a generally useful topic to know in general. CLRS is the most famous introductory book on algorithms, and it gets the job done. It's long, but I thought it was decent enough. There are also plenty of video lectures on algorithms online; I liked the MIT OpenCourseWare of this class.

Graph Theory: Many combinatorial optimization problems involve graphs, so you would definitely want to know some graph theory. It's also super interesting, and definitely worth learning regardless! West is a good book with lots of exercises. Bondy and Murty and Diestel also have good books, which are freely available in PDF if you do a google search. Since you're doing a project on traffic optimization, you might find network flows interesting. Networks are directed graphs, where you think about moving "flow" across the edges of the graph, so they are useful for modelling a lot of real-life problems, including traffic. Ahuja is the best book I know on network flows.

Linear and Integer Programming: Many optimization problems can be described as maximizing (or minimizing) some linear function subject to a set of linear constraints. These are linear programs (LPs). If the variables need to take on integer values, then you have an integer program (IP). Most combinatorial optimization problems can be formulated as integer programs. Integer programming is NP-hard, but in practice there are methods that can solve most IPs , even very large ones, relatively quickly. So, if you actually want to optimize things in real-life this is a very useful thing to know. There's also a mathematically rich field of developing methods to solve IPs. It's a bit of a different flavor than the rest of this stuff, but it's definitely a fertile area of research. Bertsimas is good for learning linear programming. Unfortunately, I don't have a good recommendation for learning integer programming from scratch. Perhaps the chapters in Papadimitriou - Combinatorial Optimization would be a good introduction.

Approximation Algorithms: This is about algorithms which quickly (in polynomial time) find provably good but not necessarily optimal solutions to NP-hard problems. Williamson and Shmoys have a great book that is freely available here.

The last book I'd recommend is Schrijver. This is the bible for the field. I put it here at the end because it's more of a reference book rather than something you could read cover to cover, but it's REALLY good.

Lastly, if you like traffic optimization, maybe look up what people are doing in operations research departments. A lot of OR is about modelling real problems with math and analyzing the models, so this would include things like traffic optimization, vehicle routing problems, designing smart electric grids, financial engineering, etc.

Edit: Not sure why my links aren't all formatting correctly... sorry!

u/kaidomac · 3 pointsr/IWantToLearn

>IWTL How to be more positive and be able to get over the slumps of sadness and feelings of inadequacy in life.
>Recently I've began to notice that I have feelings of being inadequate in a lot of things in life. I feel that I'm pretty confident in every day life. I do my best to look good, smell good, and make sure I treat everyone I cross with the best attitude I can offer. I try to make sure I'm the best version of myself that can exist, but I still find myself thinking that I'm not good enough. That my friends deserve a better person to talk to, my girlfriend deserves a better boyfriend, and that I myself am just not cutting it. I want to learn how to fix this toxic mindset and be able to turn my thoughts around and be proud of myself for what I'm doing correctly. I'm a 22 year old Male by the way. Not sure if that has any correlation at all, but it's out there.

It's worth learning how the system (i.e. your brain) works in order to create change. In a nutshell:

  1. Thoughts create emotions (events are just events; your interpretation of those events is a thought, and thoughts become emotions)
  2. You have basically a Twitter feed in your head, streaming ideas into your brain
  3. Most people never realize they can audit that feed (I didn't, until I read the books below)
  4. TL;DR - you don't have to believe everything you think (and what you think becomes how you feel)

    If you're up for some reading & practice exercises, get these two books: (same author, second one is a workbook you fill out)

  • Feeling Good
  • Ten Days to Self-Esteem (literally a tool to help you identify how you think, how you feel, and decide how you want to change both of those things)

    I'd highly recommend walking through the book in the second link, as it helps you write stuff down, audit (i.e. review) it, and then decide how you'd rather think (and eventually feel) instead. It's a simple mechanism, but externalizing it is really what gives you control over it, because you can literally see it, on paper, in front of you. We all lie to ourselves, we all let ourselves slide, and we all believe fuzzy notions about ourselves that are untrue, whether it's an inability to accept mistakes due to perfectionism or feeling sad or inadequate or whatever you're struggling with. Learning how the different mechanisms in your brain work (thoughts create emotions, you don't have to believe everything you think, etc.) is hugely empowering for changing how you feel!

    On a tangent, there's a really excellent Ted Talk by Monica Lewinsky on shame that I just watched the other day, and is extremely well-written & well-delivered:

    If you're not familiar with her history, in her early 20's, she fell in love with her married boss & slept with him. This isn't big news, except that her boss at the time was President of United States Bill Clinton, so it was a huge scandal. The catch was that we were just at the beginning of the Internet age, so she got mega-attacked worldwide online. Today, unfortunately, cyber-bullying is pretty normal, but she had to learn how to deal with it & take ownership of her story instead of letting others or her internal "Twitter feed" define her. Pretty good talk to listen to! Kind of the overall idea of the books above & that talk are:

  1. You are valid just being you
  2. Being imperfect is OK (everyone on the planet is imperfect!); mistakes happen & they can be worked on
  3. Thoughts create emotion; you can audit what you think & choose how you want to feel about things proactively, instead of reactively
  4. You can let others define you, or you can let your internal Twitter feed define you, orrrrr you can work on how you think, in order to cement your self-image down

    My situation was similar to yours; I always felt like a second-class citizen, emotionally - happy on the outside, but lots of doubts & anxiety on the inside. For me, going through this process was both an essential part of maturing & also for defining exactly who I am. I'm not a big fan of the Hollywood approach of "go out & find yourself"; I'm a bigger fan of "think about things & define who you want to be", i.e. I like to be nice, I like to help other people, I like to do good-quality work, I like to feel good & am willing to do the things required to make me feel good (ex. get enough sleep, eat throughout the day, audit my thinking patterns, etc.), and so on. You absolutely should NOT be walking around feeling like you're not good enough all the time! You should be feeling good & happy instead! Learning how your mind works & how to tweak the system has helped me a lot with that problem.
u/MrBushido2318 · 20 pointsr/gamedev

You have a long journey ahead of you, but here goes :D


C++ Primer: One of the better introductory books.

The C++ Standard Template Library: A Tutorial and Reference: Goes over the standard template library in fantastic detail, a must if you're going to be spending a lot of time writing C++.

The C++ Programming Language: Now that you have a good idea of how C++ is used, it's time to go over it again. TCPPL is written by the language's creator and is intended as an introductory book for experienced programmers. That said I think it's best read once you're already comfortable with the language so that you can full appreciate his nuggets of wisdom.


Modern C++ Design: Covers how to write reusable C++ code and common design patterns. You can definitely have started game programming by the time you read this book, however it's definitely something you should have on your reading list.

C++ Templates: Touches on some similar material as Modern C++ Design, but will help you get to grips with C++ Template programming and how to write reusable code.

Effective C++: Practical advise about C++ do's and dont's. Again, this isn't mandatory knowledge for gamedev, but it's advice is definitely invaluable.

Design Patterns: Teaches you commonly used design patterns. Especially useful if you're working as part of a team as it gives you a common set of names for design patterns.


C++ Concurrency in Action: Don't be put off by the fact I've put this as an "advanced" topic, it's more that you will get more benefit out of knowing the other subjects first. Concurrency in C++11 is pretty easy and this book is a fantastic guide for learning how its done.

Graphics Programming

OpenGL: A surprisingly well written specification in that it's pretty easy to understand! While it's probably not the best resource for learning OpenGL, it's definitely worth looking at. [edit: Mix it in with and arcsynthesis's tutorials for practical examples and you're off to a good start!]

OpenGL Superbible: The OpenGL superbible is one of the best ways to learn modern OpenGL. Sadly this isn't saying much, in fact the only other book appears to be the "Orange Book", however my sources indicate that is terrible. So you're just going to have suck it up and learn from the OGL Superbible![edit: in retrospect, just stick to free tutorials I've linked above. You'll learn more from them, and be less confused by what is 3rd party code supplied by the book. Substitute the "rendering" techniques you would learn from a 3d book with a good 3d math book and realtime rendering (links below)]

Essential Mathematics for Game Programmers or 3D Math Primer for Graphics and Game Development: 3D programming involves a lot of math, these books cover topics that OpenGL/DirectX books tend to rush over.

Realtime Rendering: A graphics library independent explanation of a number of modern graphical techniques, very useful with teaching you inventive ways to use your newly found 3d graphical talents!

u/CodeTamarin · 2 pointsr/gamedev

You always want processing. You may or may not need graphics. I saw you say you liked fighting games. You'll need a decent rig with some capable graphics.

You wanna dev?

First, yes you need a machine, a decent one. Do you want to build it? Yes , but if not then check these out. I suggest getting a workstations because they're built for productivity. However, they're expensive.

Also, I'm not sure you should commit to a desktop. Two words: Game Jams. You might want to take part in communities involved in game making games. For inspiration, mentorship and just overall fun. If you're not familiar, games jams are when developer enthusiasts get together and build a game over a period of time. The games tend to be simple and set around a theme for the event.

In which case, look at some cool laptops. The reason I suggest getting a gaming laptop is that it will have the graphic card you need, it doesn't need to be high end, just good enough to not be a toaster. Also gaming laptops tend to be more powerful.

So from a dev point of view, they're pretty solid. Personally, I prefer workstations. If you asked me, I would get a workstation with a video card, but those are very expensive and maybe when you master your craft you can drop some real cash on it. You're new. So don't spend too much, in case the entire thing doesn't jive with you. Worst case you get a decent gaming laptop to play MK at the coffee shop. (Don't laugh, I used to play Street Fighter at a coffee shop, it's a nice vibe!)

Also, I would also check out Your city or area might have groups dedicated to building games and maybe you can learn with another person. From a professional point of view, there's a lot of value in learning to work with others.

So you got your hardware, now for software.

You will likely want to start building stuff. But you're going to need some baseline stuff.

So, I say go with Unity, long term. However you need to get to a place to understand unity. So... you're going to need to learn some coding. To at LEAST be comfortable with code. I say learn the basic and intermediate stuff first then jump into Unity. If you're feeling bold you could also do the advanced.

You will need only Visual Studio and make sure during the install you ask to include Unity.

Finally, you should read Clean Code. Write good clean code. Future you will thank you.

Now, you gotta be productive.

Set up time to do what you want to do. One or two hour blocks. Commit to them. Log that time. Also, get open office, or some other equivalent and start organizing your workflow. as a develop you need purpose in your tasks. So outline your tasks. Develop you "method" for working. Maybe you like self imposed crunch where you just throw on music and go. Maybe you prefer small bursts of productivity. Whatever it is, figure it out.

Journal your work. Go back and read it occasionally. Take non-digital notes on important stuff you learn. Writing helps with retention. You have two processes you need to flesh out.

  • Your development process. How something gets built, tested and delivered.
  • Your Creative process. How you come up with a game idea and flesh out if it's good.

    You're going to need to get a good sense of how to build a proof of concept. This will help you "feel out" your game's mechanics.

    Over time, you will need to explore more advanced idea in computer science like data structures and design patterns... but for now, focus on getting comfortable with code, debugging. Hell, even make a console app text adventure game. Start there. Then get more complexity. The idea here, is to take your time, be diligent and stick to it. Slow isn't bad, not completing is bad. So take your time and good luck!
u/TheAmazingSausage · 128 pointsr/androiddev

Android team lead here, I've been working with Android commercially since 2009 (before Android 2.0 was released) and have worked at, or done work for, some big companies (Mozilla, Intel, Google, HTC...). I was in a very similar situation to you in that I was a web development and was bored, I'd been playing with Android in my spare time; I got my first break by volunteering to do an android app at the company I worked for, and went from permanent employee to contractor fairly quickly after that and have been doing it ever since.

First thing to say is that if you can get your currently company to pay you to learn android and stay with them, that's a win win for both parties (you get to learn something new without a drop in salary and don't have to interview and they don't lose a good member of staff).

In terms of moving company, I don't know where you are based, but here in the UK I often see junior Android contract roles coming up for £200-300 a day. Failing that it's just a case of applying for lots of poisitions and really knowing your stuff.

What I would look for in a junior is to have read, understood and put in to practice Clean Code ( and Design Patterns ( I would expect you to have a good understanding of basic Java and OOP; a working understanding of MVP or MVVM (,; understand threading; know about all the major parts of Android (Services, Broadcast receviers, Activities, Fragments etc); know how to write a custom view; be able to efficiently design a layout in XML and correctly apply styles and themes; understand the support libraries - what they contain, why they exist and what they are used for (and also when you don't need them); understand the difference between unit testing and integration testing and know what makes for a good test; the Gradle build system is a really nice way of defining your project build - knowing the fundamentals is essential.

A few of the main libraries I'd expect you to know and have used would be OkHttp (, Retrofit (, Butterknife (, Picasso ( or some other image loading library, GSON ( or Moshi ( or some other json parsing library

If you want to level up then there are loads of advanced topics surrounding Android. Any of these following topics will take a while to learn, but will be worth it and will look good in interviews and on you CV:

u/RishFush · 61 pointsr/IWantToLearn

Rich Dad Poor Dad catches a lot of flak, but it's actually really good at teaching the absolute basics in an easy-to-follow manner. Like, learn what a Cash Flow Statement is, increase your asset column, learn basic accounting language, separate emotions and money, minimize taxes. Just glean the overall principles he's teaching and don't blindly follow his specific strategies.

The Richest Man in Babylon is another great, easy to read, investing 101 book.

And The Millionaire Next Door is a research-based book on Millionaires in America and what kind of habits and mindsets got them to their current wealth. It's a wonderfully refreshing read after being brainwashed by tv and movies saying that millionaires won it or stole it and live lavish lives. Most actual millionaires are pretty frugal and hard working with modest lives.

And here are some resources to help you learn all the new words and concepts:

u/Am_draw · 5 pointsr/learnart

Your friend is sort of right about the pen. It can help do away with the "chicken scratch" method of drawing by forcing you to be more confident with your lines but you should stick with pencil for now.

I'm mostly self-taught as well (although I learned a bit from Watts Atelier until it got to be too expensive) and the sheer amount of information out there can be really overwhelming. I mean, there's so many things to learn: perspective, line weight, figure drawing, portraiture, landscape, etc.

What definitely helped me is realizing that I'm never going to stop improving as an artist. That means that I'm going to have my entire life to hone my skills. Even if you have to unlearn a lot of bad habits, you've still got plenty of time to practice slowly, deliberately and mindfully.

If you understand that you've got your whole life to get better, it's easier to formulate a strategy to get better. You've got to think about this in the long term. That means taking a month to work solely on anatomy, another month to work only on perspective, another month to work on tone and values, while always revisiting the skills that you've already cultivated.

For example, I've laid out my artistic goals 3 months in advance. That means that for the next 3 months, I'm only focusing on anatomy and gesture/figure drawing. My daily schedule this week looks like this:


1, 2, 5 and 10 minute gesture/figure drawings

study/copy hands from Bridgeman's Constructive Anatomy book

draw 50 hands

spend about 10-15 minutes drawing hands from memory and comparing them to the references I was using earlier

work on something fun

If I have extra time, I'll work on some more anatomy studies but it depends on how busy I am with work/life. After this week is up, I'll move on to arms, then the core, then legs, head, etc, following the same setup I've made. Maybe the next 3 months, I'll move on to perspective drawing but I haven't thought that far ahead yet.

If you're confused about where to start, just pick something that you're the weakest at and start drawing that. It's a grind and you're going to be producing hundreds, if not thousands of drawings but that's the way to get better.

Like I said, if you start thinking in the long term, it gets less overwhelming. I'm gonna link some resources that really helped me out.


Perspective Made Easy

Drawing on the Right Side of the Brain

Fun With a Pencil Actually, anything by Loomis.

How to Draw Kind of a technical book but goes into really great detail about perspective

Youtube Channels

Watts Atelier Highly recommended. Watch his figure drawing videos. Also, if you can spare the cash, join his online school. It's fantastic and very structured course in drawing. Definitely look into this if you have trouble deciding what to learn next.

Proko This guy has great intro videos for figure drawing. I think he learned at Watts Atelier as well.

New Masters Academy They have a ton of great videos about everything. Definitely look into Glen Vilppu's figure drawing series. He's the god of figure drawing.

Alphonso Dunn Really great pen and ink tutorials

Sorry if I overwhelmed you (ironic, considering your original post) but I just wanted to share some stuff that's really helped me develop a schedule and get better. Let me know if you have any questions and I'll do my best to help you a fellow art student out.

TLDR: You have plenty of time in your life to get better, so make a schedule and stick to it.

u/OwlinAutumn · 12 pointsr/Yogscast

~rings doorbell wearing a bright, over-enthusiastic smile~ Oh, hello friend. I hear you and your friends might be interested in getting started on the road towards board gaming! This is excellent news! There are many excellent resources to help guide you and yours towards many fun-filled experiences with friends and family. ^Please, ^don't ^be ^afraid!

~Whips out a bunch of pamphlets, waving them at you~ I would recommend checking out the /r/boardgames community here on reddit, especially this wiki post on what games you should try if you're new to modern board games. It's got a ton of great suggestions with descriptions to help you figure out if you might actually enjoy the game. That wiki and the subreddit itself also have tons of easily accessed info for you, if you need. They can even help you find your nearest FLGS (Friendly Local Game Store)!

Also you might check out some reviewers like Shut Up & Sit Down, who are my favourites and have a ton of articles and video reviews, or The Dice Tower, who have lots of videos of lists and reviews like the one I linked that can give you some ideas of what to get. (Sometimes way too many ideas... ~waggles her overly long games-to-buy list~) SUSD even has a great Intro to Board Games video for people who are hesitant or starting into the hobby and don't quite know what it's all about or where to start - it's a few years old, but still very relevant, and I recommend any of their videos. I find them hilarious.

And if you decide you're really getting into the hobby, you might start visiting the marvellous, dank morass that is BoardGameGeek, aka BGG or 'the Geek'...

As for recommendations straight from me... The hardest and best thing with board games is everyone likes something different? But I find one can't go wrong most of the time with these:

  • Pandemic
  • Survive! Escape from Atlantis
  • Takenoko
  • Forbidden Island
  • Colt Express
  • Jamaica

    Most of these are fairly simple and relatively short, but they're all fun starter games that are easy to pick up and play, and I've never known anyone to not enjoy themselves when I've brought out any of these. I often do game nights with different mixes of friends, to which I will usually bring an Ikea bag full of games, and there's almost always at least one or two of these particular games in that bag. I'm pretty sure they're all in print, too, so they shouldn't be too expensive!

    Also, if you guys are looking into tabletop RPGs but don't know where to start with that, and you don't have anyone who knows how to DM/GM handy, the newest edition of D&D has a Starter Set out - it's a pack that includes dice, pre-rolled characters, a starter rule book and a pre-written starting adventure. I will always recommend Red Boxes/Starter Sets, D&D does a great job with these and makes it really easy for you to get into it, even if no one in the group is familiar with rpgs to begin with.

    tl;dr - Board/card games are amazing, there's lots of resources out there for you, I hope I didn't scare you off with my enthusiasm. Welcome to tabletop gaming!

    ^Edit: ^Now ^with ^more ^links!!
u/ManicComputer · 3 pointsr/css

Start by trying to understand the CSS and HTML on the sites you like going to. If you haven't already, become familiar with the F12 developer tools each browser provides. You'll want to get comfortable with them all because early on you will want to discover why your pages aren't looking the same in one browser to the next. Using the dev tools in the browser you can actually change the way the page is styled by literally changing the CSS in the developer tools. Or you can add styles as well which is GREAT when modifying your own site so you dont have to go back and republish it each time you make a change. IE's dev tools are actually pretty great. You can also simulate older browsers by changing the document/browser mode in the Emulation tab (this isn't perfect btw, but works well for the most part)

Next start using or and try to recreate some elements on a site you like. Do this daily, and do not get frustrated. By using the dev tools you can see how they used CSS to get the style you like, and the surrounding divs/spans/p/etc around it. You can also right click on the page and select "inspect element".

Codecademy is GREAT but one thing it doesn't do well is using real world tools since you are using their environment. You will learn far more by manipulating the dom in F12 or using JSFiddle/CodePen. Plus you can post a page you are working on in JSFiddle/CodePen to a forum like this one for help with what you are working on for a lot better discussion.

Another good site to keep in your toolbox is Can I use. This will help you with understanding which CSS can and can't be used for your specific browser support needs. One example that comes to mind is wanting to use text-shadow which isn't supported in IE9.

Because this is a post in a CSS sub, I'm not sure if you are going down the web developer route, but if you are, then continue reading. Otherwise, feel free to skip to the last paragraph.

Next you will want to move on to the final tool in your front end development toolbox you will want to master and that is JavaScript. Learn straight JavaScript first, and avoid mixing in jQuery until you feel like you have a great understanding of how JS works on its own. I believe the JS tutorial on Codecademy mixes jQuery early on, and if you are just starting out you may not realize the difference. Don't get me wrong, learning jQuery is almost as important as learning JavaScript, it's just important to understand it is a library for JavaScript, and as a framework has its uses and limitations. I really liked the JavaScript tutorial on Code School, so that would be a great place to start. It's not free, but I believe they have a free trial. Otherwise everyone will tell you JavaScript: the Good Parts and Eloquent JavaScript (which is online and free) are required reading.

After that you'll want to learn some of the more popular libraries and frameworks for CSS & JS, such as LESS, Sass, jQuery, AJAX, node.js, backbone.js, and Bootstrap to name a few.

After this, then you'll need to decide if you prefer to lean more to the designer side or the back-end developer side. Front-end developers are usually the bridge between the designer and back-end developer.

In my experience though, you fall in to either being an all-in-one or the designer who does front-end work. Learning designer tools like Illustrator and Photoshop will be helpful if you are asked to or need to create your assets. I actually prefer Fireworks (though I hear it is being discontinued) for creating quick assets I couldn't create with CSS instead of Illustrator because its a little less robust and for someone new its much easier to learn. Otherwise if you are going the back-end route you'll probably want to research which server-side language you want to start with like PHP, Ruby, Python, .NET, etc and then what database such as MySQL, MSSQL, etc.

The best advice I can give you though, is don't be a "master of none" web developer. Become a master at CSS before you move to JavaScript. Then become a master at JavaScript before you move to another language, or whichever language you choose next. When I started out I tried to learn CSS, JavaScript, ASP, PHP, jQuery, C#, AJAX, SQL, and a few others because I wanted to get started quickly...along with pressure from the company I worked at. You will get overwhelmed, burnt out, and start making mistakes, or even worse, not get to the bread and butter of the language you are trying to learn.

u/reddexx · 0 pointsr/self

I am lending you my strength, support and assurance! You're going to get through this, you're going to quit smoking, and you'll come out grinning ear to ear. I should know, I've been where you are...

I'm a former smoker and life-long denture wearer. I was born with a congenital tooth formation disorder (dentata imperfect) and my teeth never grew in white and beautiful. Instead I was "blessed" with teeth that were stubby, brown and flaking. I wore dentures over busted teeth from age 5. At age 24ish, I finally had all my teeth pulled. Let me tell you why it was great.... but before that:

How did I quit smoking? I'll tell you exactly. But first, let me tell you that it took me years and many many tries at quitting smoking to find my way to quit. What worked for me may not work for you, or for others. But what always works is keep on trying to quit smoking using new methods until you find the one that works for you.

After trying cold turkey (many times), laying bets, the patch, online support groups etc., I finally found freedom and withdrawal-free peace with Allen Carr's The Easy Way to Quit Smoking.

Withdrawal free, no shit. Probably why it worked for me. So try it, it really is easy. And whether or not Carr's book works for you, keep trying to quit smoking and never give up until you find what works for you. You too will find it, and it will literally be the best thing you've done yet.

And about the dentures? You're going to love 'em. Once you no longer have to hide your busted old-teeth, once you can laugh and smile and flirt freely with perfect teeth you're confidence and social success is going to soar. You know how many people wish they could have perfect teeth? And lucky you get to have them.

Be brave, be strong, keep trying until you quit for good. You're going to come out smiling and confident with your best life yet ahead of you. Sending you virtual hugs!

u/ballpein · 11 pointsr/answers

I wouldn't suggest you rush to your doctor with the question, "am I seriously depressed?" If you live in the west, there's a 99% chance that an M.D. will shove a multiple choice test at you, which may or may not come back showing you are depressed. If it shows you are depressed, your doctor will prescribe an antidepressant... which may or may not make you feel better, but it will definitely not have any real effect on the root of your problems.

I think the answer to the question, "am I seriously depressed?" lies in another question: does your mood have a chronically negative impact on your life? everyone gets sad from time to time, but does your mood interfere with your your relationships, or your work, or impede your ability to achieve your goals and take enjoyment out of day to day life?

If the answer is yes, then you should do something to change your mood. In my experience, the best way to change your mood is by working with a good shrink. You want a registered psychologist, or a professional counsellor with an MSW degree (Masters of Social Work). There are any number of people in the phone book calling themselves "therapists" or "counsellors" but those names might not necessarily mean anything more than a 1 or 2 year diploma, and maybe much less than that. Not to disparage those people, nor all the people they help... but personally I only want to trust my mind to the very best.

Anyways... any good shrink will be helpful, but I strongly recommend you find someone who specializes in Cognitive Behavioural Therapy. CBT is not at all like traditional talk therapy... you're not going to be talking about childhood traumas, or whether your father gave you enough attention. Instead, CBT is about making very concrete changes to the way think and react to your world. For example, imagine being stuck in traffic... if you're like me, most of the time I'm okay with it, but sometimes I flip out and fly into a murderous rage... CBT is about identifying what's going on in your mind in the moments between 'calmly driving' and 'wanting to eviscerate the driver in front of you', and then changing it. In the case of depression, you'll be working on the thought patterns that are bringing your mood down.

Where I am in B.C., shrinks are charging around $140 an hour, some will work on a sliding scale. That might seem like a lot, but the beauty of CBT is it works astoundingly fast... once you find a good shrink, you'll see pretty dramatic results within 1 or 2 hours, and you might feel like you're done after 4 or 5... maybe less. I have pretty severe depression, and I keep it in check with between 4 and 8 sessions, a couple times a year. So I spend $1000 - $1500 a year on head shrinking, and it's the best money I spend... I would spend double that without a second thought. The payback in terms of quality of life is remarkable, and most people spend that much or more on car maintenance. And for your relatively mild depression, you may only need a few sessions and never go back.

Finding the right shrink is key... most will give a free initial session. If you're not feeling it after the freebie, don't go back. Make sure you like them and trust them and feel like they're earning your money.

Whether or not you seek therapy with a shrink, I highly recommend the book, "Feeling Good" by David Burns [amazon link[( It's a CBT self help book for depression. Like all self help books, it's a little cheesy, but if you have some faith and go with it, it's pretty damn effective. It's bound to help you in some way even if you're not seriously depressed... might be the best $8.99 you ever spend.

u/mredding · 5 pointsr/compsci

I can't speak of a specific book that is a comprehensive history of computing, but I will speak to books that speak of our culture, our myths, and our hero's.

Hackers and Painters, by Paul Graham. People are polarized about the man, whether he's too "pie in the sky" - full of shit and ego, or if he speaks as an ambassador to our most optimistic ideals of our (comp-sci) culture. The contents of this book is a collection of his essays that are inspirational. It made me forego the societal pressures within our culture and reject popular opinion because it is merely popular and just an opinion, which is a virtue no matter who you are, where you are, or what you do. All these essays are on his website, though. If you want to review them, I recommend Hackers and Painters (the essay), What You Can't Say, Why Nerds are Unpopular, and The Age of the Essay; his oldest essays are at the bottom of the page and go up - he writes about what he's thinking about or working on at the time, so you'll see the subject matter change over time. So much of this will have direct application to his middle school and high school life. I cannot recommend this book, and the rest of his essays, enough.

If he wants to get into programming, I recommend The Pragmatic Programmer. This book talks about the software development process. I'm not going to lie, I don't know when best to introduce this book to him. It's not a hard read whatsoever, but it's abstract. I read it in college in my first months and said, "Ok," and put it down. Approaching the end of college and my first couple years in my profession, I would reread it ever 6 months. It's a kind of book that doesn't mean anything, really, without experience, without having to live it, when he has an obligation to his craft, his profession. I tell you about this one since you're asking about books to tell him, because this isn't something someone would normally come up across without being told about it.

The Cathedral and the Bazaar is a telling book about the cultural differences between the proprietary monoliths like Apple and Microsoft, and the Free and Open Source Software communities that back such popular software as Linux (the most popular operating system on the planet, running on all top 500 super computers, most server computers on the internet, and all Android phones) and Chrome(the worlds most popular web browser). Indeed, this book directly reflects the huge cultural battle that was duked out in the field, in the industry, and in the courts from the mid-90s and into the 2000s. It advocates helping the community, contributing to something larger than yourself, and that none of us are as good as all of us. To paraphrase Linus Torvalds(inventor of Linux) "Given enough eyeballs, all bugs are shallow."

It's important to know who the hero's are in our culture, and they are diverse and varied, they're not just computer scientists, but mathematicians, physicists, philosophers, science fiction writers, and more. I would find a good book on Nicola Tesla, since he invented basically everything anyway (Thomas Edison was a great businessman, but a bit of a tosser), Richard Feynman was a physicist who is still celebrated in his field, and he even worked for Thinking Machines, back in the day, which was a marvel of it's time. Seymour Cray founded Cray Supercomputers and they have a lasting legacy in the field, a biography on that would be interesting. A biography on Symbolics and their Lisp Machines will make him yearn to find one still functioning (a rare gem that crops up every now and again, though he can run one in an emulator), and about the "AI Winter", a significant historic era (note: the AI Winter is over, and we are in spring, the history is both compelling and enthralling). Anything Issac Asimov published (in nearly every category of the dewy decimal system) is also compelling, and hardly dated. In fact, he's the originator of a lot of modern sci-fi. Charles Babbage invented the modern computer (though it was entirely mechanical in his day, and it wasn't actually built until 1996-2002) and Ada Lovelace was the worlds first computer programmer. A woman! Speaking of women, and it's worth young men learning this about our history, Grace Hopper was a military computer engineer who invented the term "bug".

And speaking of women, someone I have respect for, especially if your boy wants to get into game development is Sheri Graner Ray's Gender Inclusive Game Design, which may be more appropriate when he's in high school, and I consider it required reading for anyone who wants to enter the gaming industry. The book lays out plainly how video games hyper-sexualize both women, and, for some reason surprisingly to many - men, it's disastrous effects it has for the game industry, the game market, and the gaming community, and insights on how we may combat it. I have seen colleagues (men) become indignant and personally offended at reading this book, but were absolutely humbled when they took the fight to Sheri directly (we had a few phone interviews with her, always fantastic). If your boy found a problem with this book, he would do well to read Paul Grahams essay on keeping his identity small... The subject matter is not a personal attack on the individual, but on the blight, and he would be better served finding himself on the right side of history with this one, it would serve him well if he were to pursue this craft, specifically, but also any forward facing media in general.

And I also recommend some good books on math. Algebra, linear algebra, calculus, and statistics. You can get very far, lead an entire career unto retirement without knowing anything more than arithmetic and basic, basic algebra, but he could only serve himself well if he makes the decision that he is going to like maths and chooses to willfully become good at it. Outside the context of school and terrible teachers, it's actually an enthralling subject. Just get him a copy of Flatland, Flatterland, and Sphereland. Try this. There are books about proofs that break them down into laymen terms so that anyone can celebrate how special they are. My wife has a few on the shelf and I can't remember their titles off hand. Also this, the book is the narrative of some witty laymen who discover a whole branch of mathematics from first principles, the surreal numbers, an extension of imaginary numbers. It's really quite good, but might keep him occupied for a couple years in high school.

I should stop here or I never will.

u/CSMastermind · 4 pointsr/learnprogramming

I've posted this before but I'll repost it here:

Now in terms of the question that you ask in the title - this is what I recommend:

Job Interview Prep

  1. Cracking the Coding Interview: 189 Programming Questions and Solutions
  2. Programming Interviews Exposed: Coding Your Way Through the Interview
  3. Introduction to Algorithms
  4. The Algorithm Design Manual
  5. Effective Java
  6. Concurrent Programming in Java™: Design Principles and Pattern
  7. Modern Operating Systems
  8. Programming Pearls
  9. Discrete Mathematics for Computer Scientists

    Junior Software Engineer Reading List

    Read This First

  10. Pragmatic Thinking and Learning: Refactor Your Wetware


  11. Code Complete: A Practical Handbook of Software Construction
  12. Software Estimation: Demystifying the Black Art
  13. Software Engineering: A Practitioner's Approach
  14. Refactoring: Improving the Design of Existing Code
  15. Coder to Developer: Tools and Strategies for Delivering Your Software
  16. Perfect Software: And Other Illusions about Testing
  17. Getting Real: The Smarter, Faster, Easier Way to Build a Successful Web Application

    Understanding Professional Software Environments

  18. Agile Software Development: The Cooperative Game
  19. Software Project Survival Guide
  20. The Best Software Writing I: Selected and Introduced by Joel Spolsky
  21. Debugging the Development Process: Practical Strategies for Staying Focused, Hitting Ship Dates, and Building Solid Teams
  22. Rapid Development: Taming Wild Software Schedules
  23. Peopleware: Productive Projects and Teams


  24. Slack: Getting Past Burnout, Busywork, and the Myth of Total Efficiency
  25. Against Method
  26. The Passionate Programmer: Creating a Remarkable Career in Software Development


  27. The Mythical Man-Month: Essays on Software Engineering
  28. Computing Calamities: Lessons Learned from Products, Projects, and Companies That Failed
  29. The Deadline: A Novel About Project Management

    Mid Level Software Engineer Reading List

    Read This First

  30. Personal Development for Smart People: The Conscious Pursuit of Personal Growth


  31. The Clean Coder: A Code of Conduct for Professional Programmers
  32. Clean Code: A Handbook of Agile Software Craftsmanship
  33. Solid Code
  34. Code Craft: The Practice of Writing Excellent Code
  35. Software Craftsmanship: The New Imperative
  36. Writing Solid Code

    Software Design

  37. Head First Design Patterns: A Brain-Friendly Guide
  38. Design Patterns: Elements of Reusable Object-Oriented Software
  39. Domain-Driven Design: Tackling Complexity in the Heart of Software
  40. Domain-Driven Design Distilled
  41. Design Patterns Explained: A New Perspective on Object-Oriented Design
  42. Design Patterns in C# - Even though this is specific to C# the pattern can be used in any OO language.
  43. Refactoring to Patterns

    Software Engineering Skill Sets

  44. Building Microservices: Designing Fine-Grained Systems
  45. Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools
  46. NoEstimates: How To Measure Project Progress Without Estimating
  47. Object-Oriented Software Construction
  48. The Art of Software Testing
  49. Release It!: Design and Deploy Production-Ready Software
  50. Working Effectively with Legacy Code
  51. Test Driven Development: By Example


  52. Database System Concepts
  53. Database Management Systems
  54. Foundation for Object / Relational Databases: The Third Manifesto
  55. Refactoring Databases: Evolutionary Database Design
  56. Data Access Patterns: Database Interactions in Object-Oriented Applications

    User Experience

  57. Don't Make Me Think: A Common Sense Approach to Web Usability
  58. The Design of Everyday Things
  59. Programming Collective Intelligence: Building Smart Web 2.0 Applications
  60. User Interface Design for Programmers
  61. GUI Bloopers 2.0: Common User Interface Design Don'ts and Dos


  62. The Productive Programmer
  63. Extreme Programming Explained: Embrace Change
  64. Coders at Work: Reflections on the Craft of Programming
  65. Facts and Fallacies of Software Engineering


  66. Dreaming in Code: Two Dozen Programmers, Three Years, 4,732 Bugs, and One Quest for Transcendent Software
  67. New Turning Omnibus: 66 Excursions in Computer Science
  68. Hacker's Delight
  69. The Alchemist
  70. Masterminds of Programming: Conversations with the Creators of Major Programming Languages
  71. The Information: A History, A Theory, A Flood

    Specialist Skills

    In spite of the fact that many of these won't apply to your specific job I still recommend reading them for the insight, they'll give you into programming language and technology design.

  72. Peter Norton's Assembly Language Book for the IBM PC
  73. Expert C Programming: Deep C Secrets
  74. Enough Rope to Shoot Yourself in the Foot: Rules for C and C++ Programming
  75. The C++ Programming Language
  76. Effective C++: 55 Specific Ways to Improve Your Programs and Designs
  77. More Effective C++: 35 New Ways to Improve Your Programs and Designs
  78. More Effective C#: 50 Specific Ways to Improve Your C#
  79. CLR via C#
  80. Mr. Bunny's Big Cup o' Java
  81. Thinking in Java
  82. JUnit in Action
  83. Functional Programming in Scala
  84. The Art of Prolog: Advanced Programming Techniques
  85. The Craft of Prolog
  86. Programming Perl: Unmatched Power for Text Processing and Scripting
  87. Dive into Python 3
  88. why's (poignant) guide to Ruby
u/Cohesionless · 17 pointsr/cscareerquestions

The resource seems very extensive such that it should suffice you plenty to be a good software engineer. I hope you don't get exhausted from it. I understand that some people can "hack" the technical interview process by memorizing a plethora of computer science and software engineering knowledge, but I hope you pay great attention to the important theoretical topics.

If you want a list of books to read over the summer to build a strong computer science and software engineering foundation, then I recommend to read the following:

  • Introduction to Algorithms, 3rd Edition: A lot of people do not like this classic book because it is very theoretical, very mathematical, and very abstract, but I think that is its greatest strength. I find a lot of algorithms books either focus too much about how to implement an algorithm in a certain language or it underplays the theoretical foundation of the algorithm such that their readers can only recite the algorithms to their interviewers. This book forced me to think algorithmically to be able to design my own algorithms from all the techniques and concepts learned to solve very diverse problems.

  • Design Patterns: Elements of Reusable Object-Oriented Software, 1st Edition: This is the original book on object-oriented design patterns. There are other more accessible books to read for this topic, but this is a classic. I don't mind if you replace this book with another.

  • Clean Code: A Handbook of Agile Software Craftsmanship, 1st Edition: This book is the classic book that teaches software engineer how to write clean code. A lot of best practices in software engineering is derived from this book.

  • Java Concurrency in Practice, 1st Edition: As a software engineer, you need to understand concurrent programming. These days there are various great concurrency abstractions, but I believe everyone should know how to use low-level threads and locks.

  • The Architecture of Open Source Applications: This website features 4 volumes of books available to purchase or to read online for free. It's content focuses on over 75 case studies of widely used open-source projects often written by the creators of said project about the design decisions and the like that went into creating their popular projects. It is inspired by this statement: "Architects look at thousands of buildings during their training, and study critiques of those buildings written by masters."

  • Patterns of Enterprise Application Architecture, 1st Edition: This is a good read to start learning how to architect large applications.

    The general theme of this list of books is to teach a hierarchy of abstract solutions, techniques, patterns, heuristics, and advice which can be applied to all fields in software engineering to solve a wide variety of problems. I believe a great software engineer should never be blocked by the availability of tools. Tools come and go, so I hope software engineers have strong problem solving skills, trained in computer science theory, to be the person who can create the next big tools to solve their problems. Nonetheless, a software engineer should not reinvent the wheel by recreating solutions to well-solved problems, but I think a great software engineer can be the person to invent the wheel when problems are not well-solved by the industry.

    P.S. It's also a lot of fun being able to create the tools everyone uses; I had a lot of fun by implementing Promises and Futures for a programming language or writing my own implementation of Cassandra, a distributed database.
u/WaxenDeMario · 6 pointsr/cscareerquestions

Yes! Also, quite honestly I don't know that many CS majors who took linear algebra at my school for whatever reason.

Where do you get started?

  • If you're the type of person who likes an organized class to learn concepts, consider checking out coursera or other similar websites which offer free online learning courses! Check out their CS offerings and start from the intro.

  • I must be known for spamming this SR with this, but check out CLRS, it pretty much contains most of the "CS math" you need to know for algorithms. As well as pretty much all you need to know about Algorithms and Data Structures for any basic job.

  • REALLY make sure you understand your Algorithms and Data Structures, nearly every interview for a basic position centers around these topics. As well as some others, depending on the company: Bit manipulation, multi-threading, TCP/IP, etc.

  • You want to learn some mainstream language as a lot of other people mentioned: C++, Java, C#, Python are a few that come to mind (though there are more like Ruby!). Side Note: Some people have differing opinions on whether C++ is good to learn as a first language. I don't know C# (but from its apparent similarity to Java) I would say C++ is probably the most difficult language to learn of the four I listed, but I feel that it also provides the most flexibility, because once you understand C++ it's easier to trainsition from C++ to Java, than say Java to C++ (similar for the other languages).

  • Practice! Start working on some Project Euler problems, or other practice problems. Bonus: Someone in another thread mentioned that they made a blog post for each problem they solved and explained every one of their design decisions. This seemed like a bit over the top, but it really is a good practice for an interview and a job! You can even put a link to this on your resume to share.

  • Find an Open Source to contribute to, come up with your own projects and post them on your github! This can show off your skills to a potential employer!

    Bonus for programming:

  • When coding alone it's easy to get lost and start "hashing" together code. When you get to big projects, you'll find that this causes a lot of problems (and when working with other people it can cause even more). Some things to keep in mind when coding:

  • Make sure your code is maintainable.

  • Make sure your code is scalable.

  • Test, test, test!

    Maintainable kinda means that your code is easy to test, easy to comprehend (by others) and easy to modify. Read up on different design patterns to learn more about this.

    Scalable is something you'll learn more about later, but basically it's kind of thinking about whether your code will be "good" enough to handle a lot of users (how fast is it how much memory will it take up)

    Testing is very important when coding. You want to try to write small pieces of code then test it (i.e.: make sure it works).

    All three of these things show up a lot in interviews, and if you can relate why you made your code the way you did to one of these three points (or something else) you should be pretty well off :D

    How do I land an interview?

  • In your resume make sure to list any CS projects you want to mention, a link to your website (if you have one) or to other work. As well as Operating Systems you're familiar with (Linux is a big plus, but not absolutely necessary), IDE's you're familiar with (things like Eclipse, Visual Studios), and Languages you know. If you can, make sure to relate those three bullets to your project and work somehow to reiterate your experience with each language.

  • A lot of recruiting is done on-campus, but there are other options, like applying online or even better...

  • Network your way in. This gets your resume through the massive HR screen

  • Edit, edit, edit (ask friends who are in the industry).

    How do I study for an Interview?

    Typcially, an interview will have you and the interviewer. The interviewer will first ask questions about you, what you're majoring in. And then maybe ask questions about your previous projects, and then he'll throw you a programming problem. Sometimes these can just be questions like "Which is faster: quicksort or mergsort?" or something like that, but other times they'll have you code something. If the interview is online, this will either mean you'll need to tell them the code you're writing or you'll code online on some collabarative envirionment (i.e.: you type the code online). If it's in-person they may have you write on a whiteboard. There are other formats of interviews as well, so make sure to research. Typically, for most larger companies, they won't care what language you code in (hopefully though it's mainstream!), but if you don't code in a language which they use, they may test you later for proficiency in one of their languages.

  • As I mentioned before, Algorithms and Data Structures are usually go-to's for interviews, but other topics may come up so check out the req's for each job specifically.

  • It may have been a while at this point since you studied your material, to brush up on interview questions, Cracking the Code Interview is a great book to brush up on your topics for an interview, it also has some resume advice, etc. if you choose to follow it.

  • Be sure to practice talking out loud while you're coding, as this can help you during interviews. If you're stuck but your thought process is good an interviewer can help push you in the right direction.

  • If you struggle with interviews, try having a friend who you know has experience and having him ask questions, better yet if you know a friend at the company, ask him to mock interview you.

  • If you have time ALWAYS make sure you run test cases through your code mentally, and mention the test you're running and what it's supposed to catch (expected behavior) to your interviewer! If you have time and choose to ignore these, it can give the interviewer a wrong impression :\ (it also makes you look really good if you come up with all the boundary cases)

    Sorry, not sure if this helps or not!
    Good luck!
u/salamanderoil · 6 pointsr/AskComputerScience

It depends on what you already know.


Do you have any prior programming experience? If not, start there. My no. 1 recommendation here would be Allen B. Downey's free Think Python book. Others might come along and recommend something like SICP, which is a good book, but perhaps a bit hard for an absolute beginner. Downey also has a version of his book that uses Java, so if you know for a fact that this is the language your introductory programming class will be using, then that could be a better option (Python is a simpler language, which makes it easier for you to focus on the actual concepts rather than the language itself, but if you know that you'll be using Java, you might as well kill two birds with one stone).


If you do have prior programming experience, you have all sorts of options:

  • You could learn a functional language, like a Lisp (Clojure, Racket, Scheme, LFE, ...) or something in the (extended) ML family (Standard ML, OCaml, F#, Haskell, Elm, ...).
  • Or, you could go the other way and learn something low-level, like C. You could even learn about C and Lisp at the same time by building your own.
  • Or learn a logic programming language, like Prolog.
  • Or, if you really want to understand object-oriented programming (and how languages like Java managed to stuff it up), you could learn Smalltalk.
  • If you don't know what a unit test is or how to write one, you should learn.
  • Learn about data structures and algorithms. As a CS student, you'll be learning about them at some stage anyway, so there's no harm in starting early. Some people might recommended CLRS for this, but for someone just starting out, I'd recommend something a bit friendlier, such as this series of videos from Princeton (presented by Robert Sedgewick, author of one of the most popular books on the subject). If you'd prefer a book, this free one from Allen B. Downey (who also wrote the introductory programming text I recommended earleir) looks quite good.
  • Work your way through NAND2Tetris. It will take way longer than a month, but it will definitely set you apart from the rest of the class. Even if you don't do this now, you should definitely plan to do it at some point.
  • Learn about databases. Again, you'll have to study them eventually, so why not start early? You could start by trying to build something that uses a database, like a simple todo utility.


    Regardless of whether or not you have programmed before, I would also recommend doing the following:

  • Learn some basic Unix skills. It doesn't have to be too much – just enough to be able to sit down at the command line and have a vague idea of what you're doing is fine for now. You'll learn more as you use it more. That said, if you really want to dive in and learn how everything works, then something like How Linux Works could be a good read.
  • Learn some discrete mathematics. As a CS student, you'll be required to learn it at some stage – it's the mathematical backbone of CS, much like calculus is to physics – so you might as well start early. This free, book-length set of notes from MIT is very well-regarded (but don't expect to get through it all in a month!). There is also a set of video lectures if you prefer. If you're keen on learning functional programming, another option could be to integrate that with your discrete maths studies by reading Thomas VanDrunen's Discrete Mathematics and Functional Programming (if the physical book is a bit expensive for you, there's also a cheaper ebook version available).
  • For bonus points: learn to use either Vim or Emacs. There probably isn't a massive practical advantage to using these this early in your career (although they could certainly come in handy later), but if other students see you writing code in one of them, you'll look like an absolute badass. Your teachers will probably be quietly impressed, too.


    if you have any questions about my above suggestions, let me know, and I'll see if I can point you in the right direction.


    Good luck!
u/thesuperperson · 2 pointsr/DnD

Partially copy and pasted from an earlier post

Hello, and welcome to DnD!

Since you are new to DnD as a whole, I recommend the first two videos of this playlist:

Now that we have that out of the way, you need to decide what edition to play on. Personally I recommend 5e, since it is best for beginners, while still being engaging as you gain more experience. The subreddit has a wiki, and there you can find a guide on choosing an edition to play: /r/DnD/wiki/choosing_an_edition, among other things

If you don't decide to go with 5e, I cant really help you much from here, but if you do, keep reading.

Since you're all new, and would be playing online. I'd say the best option for you all would be to go onto a website called, create accounts, have the person you determine to be the DM go and buy the module The Lost Mine of Phandelver (you could all chip in if you wished, though, or one person could gift the module to the DM), and have them run it for you, which will occur over the course of many sessions.

It is literally designed for a bunch of people brand new to DnD, to be able to play it, and it has all the info you need along with some pregenerated characters for if you don't feel like bothering with character creation. You also wouldn't need to bother with paying for the full price Player's Handbook (which I would recommend you all eventually get, but only later down the line once you've further invested yourself into DnD as a hobby), that fully lists all the rules relevant to the players, along with all the base player options.

Why it would also be a good option is because as new people to DnD, you have enough to deal with in terms of learning to play, so having the module all ready and prepped for you on the most used online tabletop rpg website is just going to make the transition that much less of a hassle, when you aren't bothering as much with how to also learn to play DnD online.

Regardless, even if you decide that there must be some way for you to learn this hobby on your own, and without paying any money, there are the free to use online basic rules which come in the form of PDFs explained and given on that link I just provided. The first is the player basic rules and it goes over most of what you need to know in terms of how to play the game, the rules, and some of the player options. Both the DMs and players will want to read it. The second is the DM basic rules, which will teach whoever is the DM how to run the game, along with a huge host of other things.

I think thats all I wanted to say for now. Feel free to ask me or anyone for questions. There is a reason why this subreddit exists. Along with that, youtube is a great resource for learning how to play DnD. I learned how to play DnD all on my own just through looking up youtube guides, as someone completely new to tabletop gaming as a whole.

One good resource that you may find helpful is a video of step-by-step character creation (using the druid class as an example): (yes I know it is long, but it goes over everything you'll need, and even if someone was explaining it to you one-on-one it would take just as long). While the guy in the video is using his player's handbook as the reference for his viewers, the general procedure can still be followed just with the player basic rules.

Good luck, and welcome to your new hobby :)

u/ilikpankaks · 1 pointr/DnD

Hey man, happy that you came here. First and foremost, we have a good sidebar full of useful info, so be sure to check that out. Here is the basic rules for 5th edition.

You can buy a players handbook for 50 dollars, but it just ellaborates, and I reccomend you read the basic rules first to see if you like it.

D&D is a role playing game, where you can play any race or class your heart desires in any setting you want. YOU have control of your character. The DM controls everything else. The key to being a good player is to make a character (which the rules walk you through), and doing your best to role play the character without meta-gaming (using player knowledge instead of character's knowledge).

Other editions are still popular (3.5 and 4th edition are still commonly played). I would look up your local game store for a copy of the starter box (or check amazon here This comes with a pre made adventure, some rules, pre-made characters for the adventure, and everything you need to know to run a game (And a free set of dice! woo!)

You'll need a polyhedral dice set (d20, d12, d10, d8, d6, and a d4) or you can use a dice rolling app (but those aren't as fun!)

You can find new players most likely at your local game shop, or just ask your friend if he knows other people who game, since you don't get along with the other players. There is no shame in that.

Also, ask random friends if they are interested in learning D&D with you. Worst case scenario, check out roll20 (link is on the side bar). Roll20 is a website that allows you to play D&D online via skype and chat, along with hosting maps. I would reccomend this if you can't find anyone to game with.

If your game shop has Adventurer's League, that is campaigns made by the makers of D&D that are officially run, and are a great way to meet people.

Also, check out /r/LFG or your local subreddit to see if there are any people interested! You can make new friends that way too! and once you know some people, they can introduce to others who play.

Best of luck, and if you have any questions, check the side bar, use the search function, and if those fail, feel free to ask us here!

Another good forum-based website is Giant in the Playground. They are the host of the popular D&D webcomic Order of the Stick, and they have a good forum for discussing D&D. if you like 4chan, /tg/ is a board for traditional games, where D&D is discussed on occasion (but not always well recieved).

Good luck and happy gaming!

u/rthomas6 · 2 pointsr/relationships

I'm 27, and this is the advice I would give my 17 year old band nerd self (bari sax player here. Yes, I marched bari sax, it was awesome):

It sounds like you go to a big high school. How many girls have you tried to date? As in, how many girls have you actually asked on a date? One? Five? How can you expect to get into relationships if you don't make your romantic intentions clear? My advice is to get used to getting turned down. It's a hard thing to do, but once you desensitize yourself to rejection, dating gets easier. I mean come on, you don't really expect every girl to want to go out with you, do you? Just some. Let me be more specific: Each week, ask at least one cute girl you see for her phone number (or however people message each other nowadays). Preferably a girl you don't already talk to or know well. Look in her eyes with a bright, warm smile, say hi, make small talk, and ask for her number, or to go on a date. Classmates, cashiers, colorguard members, cheerleaders (probably not gonna happen but see the part about getting used to rejection). If she says no, then just smile and say ok. Literally nothing has been lost. Then when you get a phone number, wait a few days, then CALL HER AND ASK HER ON A DATE. Take it from there.

As for the girl who you love. She told you no. Accept her boundaries, dude. Move on. You want something that she doesn't, and trying to persuade her into changing her mind just hurts your self worth. I would strongly advise you not try to contact her in any way again. Wait for her to talk to you... more than once, preferably, before you respond at all. I think you'll find that she won't try to contact you, and that shows what she really wants from you. You deserve better than that. You deserve someone who actually likes you.

Finally, UNDER NO CIRCUMSTANCES should you try to get into a relationship with someone by first hanging around them for a long while, being super kind and doing a bunch of favors for them, and only then bringing up what you've wanted all along. That's deceptive and underhanded because you've hidden your intentions. If you like a girl and want to go on a date with her, and that's the entire reason you're talking to her, a better thing to say would be "Hey, I like you. Want to go on a date?" For now, I advise keeping potential love interests and friends largely separate, when possible. The reason for this is girls are not machines in which you put kindness coins until they magically want to date you. Ask her on a date. If she says yes, great. If she says no, accept that you're probably never going to be in a relationship. Unless you'd really be satisfied with only EVER being friends, don't actively pursue the friendship, because that's not what you really want.

Edit: Other, semi-related advice I would give my 17 year old self: Buy this book, do it with a gym partner, and thank me in a year.

u/pianoelias · 12 pointsr/getdisciplined

Hey man,

You mentioned that you went through some pretty extreme depression. What kind of treatment did you get?

There are some things this subreddit might be able to recommend, but if you're still battling with depression (remember, there's no shame in that) it's probably over our heads.

If you haven't gone through therapy, it sounds like that could be a good option for you. Remember that there is nothing wrong with getting help. Probably you know that (since you're asking here) but it's worth repeating – getting help is a sign of strength, not weakness.

If you can't or won't go to therapy for whatever reason, I highly recommend you pick up "Feeling Good: The New Mood Therapy" by David Burns. You can get the paperback for $6 on Amazon. I think learning about cognitive distortions will really help you, as I can see a few in your post. Even if you do go to therapy, the book is worth a read.

Again, remember that this doesn't say anything about your self-worth. It's just something you're going through right now, but you can work to fix it.

As an example of some things in your post:

>a few hours after I wake up I realize that I can't fix myself

Remember that you aren't broken. You can change if you want to, but that doesn't mean you're broken. I believe in you, and you believe in yourself at least a little bit, or you wouldn't have made this post. You can do this.

>I used to eat healthier, now I'm nothing

You are not nothing. You are a human person, and nothing in the world can take that away from you. There is nothing that can take away your worth as a human being.

>I have time, I'm just not using it properly.

It's awesome that you've realized this on your own. I'm sure you've been thinking through all of this a lot, and the fact that you've reached this conclusion shows some real insight. Lots of people will never admit to themselves that they really do have the time – you're off to a good start with this.

How can you start? I don't know where you're located, but Psychology Today has a simple tool that can help you find a therapist. I'd check it out and, if the option is there, look for someone that does cognitive therapy.

Outside of steps like that, take small actions. Even micro actions. Heck, the smaller the better. These actions should be easy to start and easy to finish, but finishing them accomplishes something, anything, towards making your life better. You can check out the subreddit /r/NonZeroDay if you need ideas (and also read the post that inspired the subreddit).

Baby steps will help you build confidence. They will help you prove to yourself that you can do things that make a difference. Plus, the results of those actions will help you level up your life all on their own.

That's what I've got for you. I hope it helps, and please, please don't hesitate to ask questions or PM me.

Remember, I believe in you.

u/Ancient_Paper · 5 pointsr/college

This is going to be a pretty long-winded post because most of the sentiments you are feeling right now are phases I went through are college (I am currently a senior, and though my situation has improved since the beginning of college, I am still facing some of the lingering effects of depression).

In my belief, recovering from depression has to be practical, personal, and environmental. Practical in the sense that you need to take care of yourself and the environment around you (i.e. cleaning your room (btw, I'm no Jordan Peterson fan; cleaning my room is just an easy way for me to get the day started and feel good about myself), working out, eating healthy, practicing hygiene, meditation, etc). Though it may seem like it might not have a direct effect on you, organizing yourself and your environment does give a sense of self-control and does create a better image of yourself.

As for personal, depression does not simply come from genetics (yes, I know there are cases where this is true, but in my personal belief, depression can also be defined by your past experiences and the environment you are currently in). For me, depression really came from the conflicts I had with my parents and my unpreparedness of going to college. My mom was so desperate for me to get into a good college that she ended up doing my entire art portfolio and I had to write fake comments about what those art pieces meant. Thus, when I got to a college that is well-ranked, I felt like a total sham; I felt like the education that I was receiving was not of my own, but my mother's. I was only able to really figure this out by attending four years of therapy, and even now, I'm still going through some personal struggles. The personal aspects of your life takes time to figure out, but at the same time, is also a great source of clarity.

Finally, the final aspect of recovering from depression is environmental. Without having friends and families nearby, it can worsen the effects of depression because it makes you feel isolated and feel as if you're the only crazy individual out of seemingly-normal people. For me, it's hard to interact with my family because we just did not talk to each other that often in the first place. As for friends, I did have one friend in the beginning of college, but I have felt ambivalent about it because I felt like the activities we were doing together wasn't really improving my well-being (going to bars, playing games, etc). I do appreciate the fact that I had a friend, but looking back, I wish I also had another friend who had my academic well-being in mind as well. Also, I realized that I cannot have a single friend in which I can depend on for all my needs (academic, partying, hobbies, personal introspection, etc). I realized that I need to have some friends (not a lot) that meets my different needs, and that perspective change did open up my field of view as to which friends I can make. I have some friends in which I smoke weed with, make games with, study with, and they're all not necessarily in the same group.

But that leads to the question, what if I don't have friends and family members to lean on in the first place? And that's the catch-22 aspect depression. Without friends and families to connect to, we further isolate ourselves into our rooms, breaking down the practical and personal improvements we have built for ourself. This, in turn, makes it harder to reach out to others in the first place because we're not at our best selves and we don't want to perpetuate this negative image of being depressed and not-in-control to others. Personally, I think depression is cyclical in nature, but there is a way to stop it as well. Otherwise, we would never hear stories about how people were able to recover from depression.

So then, here are some of the steps that I found useful when recovering from depression:

  1. If you're experiencing depression during the middle of the semester and see things going downhill, the best I can offer is to try your best and take as least losses as you can. The reason why is that attending to your academic needs takes a lot of energy and concentration, and trying to change for the better half-way through is immensely difficult to do (practicing habits for the first few days is hard because it forces us to be out of our comfort zone). And failing those self-improvement goals makes us feel even more shitty.
  2. But, when the semester ends, take the time to reflect about what went wrong and what went right. You're not going to have all the answers, and you're going to realize some way through the semester that the "corrections" you made may not be enough. However, small and incremental improvements is much better than none.
  3. As for maintaining healthy habits in school, I would start off by practicing those habits during winter/summer break. This is the time where you can whole-heartedly focus on creating healthy habits, and by the time you go to school again, it will feel like second nature and you don't even have to put a single thought into questions like: When should I exercise? What should I eat? What time should I go to sleep? (As a warning though, don't try to change your schedule and habits midway through the semester. I ended up doing this and it just really ruined the flow. Stick with the habits throughout the semester, and make adjustments once you are done).
  4. Start the day right and easy. The way I think of it, going throughout your day is like building momentum. You don't want to tackle the most difficult task at first, as it will wear you out easily. Rather, you want to start with the itty-bitty stuff (brush your teeth, shower, get a healthy breakfast, plan your schedule, etc). And as you finish these small tasks, it does grow into your confidence of doing bigger things. Furthermore, by tackling these small tasks/rituals in the morning, you don't have to worry about the small things, and can reserve your energy for doing more important work (i.e. academics). Motivation doesn't come before our tasks, but rather, occurs while we are in the thick of it.
  5. Know what kind of therapist you want. For me, I wanted a therapist in which I can talk about my past troubles with and gives me a lot of room to explore those past experiences. And it takes a while to find the right therapist, so don't stress about that too much as well.
  6. Keep your goals short and simple. For me, I would often stress about what I wanted to do after graduating college, and this stress of not being able to stick to one path in life made me feel completely unmotivated. What ended up working out better for me was to say: "Look, I honestly don't know where life is going to take me, and that's fine. I just know for now, I need to do well this semester, and I can worry about the next step after I'm done."
  7. Weed and alcohol. First of all don't use this as a crutch to get through depression as it will further your feelings of self-worthlessness the next day. However, if you are currently consuming them and do appreciate some aspects of it, I would only recommend doing so when you're at your best and you're in the company of others. I enjoy my weed and alcohol because it lets me be a bit loose and enjoy my time with friends. However, it does make me feel shitty the next day, and that shittiness can feed int your feelings of self-defeat. I'm not endorsing weed and alcohol as the solution to make friends; I'm just saying is that if that is one of your ways to make friends, then be very careful.
  8. Leave the room. I often joke about my therapist about my "depression chair" because it's so comfortable and in front of my desktop, I end up not leaving the room and I do nothing all day. Leave the room and go to an environment where it does encourage you to engage with your academics or other activities.
  9. Try to get a job on campus (I work as a librarian, which is ideal as I can focus on my studies and my interaction with people is at a minimal). Getting a job does enforce a sense of discipline, and hopefully, this discipline can be applied to other areas of your life.
  10. I also didn't get an internship my sophomore year. What helped me get an internship later on was finding out what internship I wanted in the first place (and it may not be the ideal and ultimate internship, but it was good enough), searching what skillsets they needed, and working on those skillsets during break via personal projects (I am a computer science major).

    Here are some resources that I found helpful:

  11. Feeling Good: The New Mood Therapy: This book gives you a good set of guidelines in which you can improve yourself. However, this book is practical in nature, so don't expect a lot of personal guidance from it.
  12. Daughters - You Won't Get What You Want: If the previous resource was practical, I consider this my personal resource. Normally, I don't ever listen to this kind of music because it's really not my taste. However, this album in itself feels very visceral and raw, and is the closest thing to death I can come across. As cliche as it may sound, this music does understand some of the feelings I go through. Other artists/albums that are lighter in tone I would recommend is Car Seat Headrest - Teens of Denial, The Mountain Goats, and Courtney Barnett. When there is no one to rely on, it feels nice to listen to others who are able to understand an ounce of what you are going through.
u/TheGuyInAShirtAndTie · 6 pointsr/DnD

A mere 4 months ago I was in your very shoes, having never played DnD but wanting to DM. Now I'm running 3 weekly games [Protip: Don't do this]. Luckily for me I found a couple great resources to help me out:

The Dungeon Master Experience is a collection of articles written by one of the best: Christopher Perkins. He's not only a Senior Designer for DnD, but he's also the DM for a number of groups including Penny Arcade, Robot Chicken, and the other designers over at Wizards of the Coast. This will be your most valuable resource.

New DM Guide Reddit's #1 Resource for new DMs.

So You Want To Be a DM: A great collection of starter tips.

/r/loremasters: A subreddit dedicated to worldbuilding.

/r/dndnext: Like /r/dnd but solely for 5e.

The Angry DM: He can be a bit preachy at times, but Angry DM has a great amount of thought put into everything he writes.

/u/famoushippopotamus If you see him post on something, just read it. He's been DMing longer than most of us have been aware that DnD existed.

DnD Encounters is a weekly event at your friendly local game store. Check it out. It's also a great place to recruit players!

[Your head!](Link Not Found): The only thing you really need to get started is an idea, write it down. You'll learn a lot just putting your thoughts on paper and thinking of how to flesh it out.

I would recommend that you go and pick up the Starter Set (HOLY SHIT GUYS ITS $12 RIGHT NOW. BUY BUY BUY!). It comes with the basic rules, a set of dice, a prewritten adventure, and some characters for the adventure. Get a couple players together and this is all you need to get started. After that you can move onto other prewritten adventures, like Horde of the Dragon Queen, or you can write your own.

It shouldn't be that difficult to find people to play with, some people might care that you've never been a PC, but you don't need to play with them. If you have friends who enjoy gaming see if they're interested. And check out your FLGS (friendly local game store). If none of those work, there are plenty of online options as well.

One last note: In my short time DMing I have to say I did not expect the sheer amount of prepwork that goes into a single session. Players have to inhabit a single character and their mechanics. You need to understand not only the characters at the table, but every NPC, trap, and monster you put in front of them. It can be time consuming. It can be hard. But it is also one of the greatest feelings in the world when you hit that flow state where you and your players are building your world together.

Good luck! And welcome to DnD, where the rules are made up, and the rules don't matter either, as long as what you're doing is awesome.

u/ftk23 · 1 pointr/selfimprovement

OP! Super late reply but i hope you have the time to read. /u/ProphetThief and the children comments for that have awesome advice so I'm not gonna reiterate everything. But I just wanna give you a bit of my own experience, etc. and hope it helps!

Good job on signing up for the gym membership, I think thats the best thing for anyone who is trying to change their mindset. It's not about getting the best body or "GETTING SWOLEE". From my experience going 3-4 times a week lifting heavy weights, really changes your brain (yeah it sounds weird) and you'll feel more positive. Personally, prior to going to the gym, there would be times throughout the day when something "bad" happens, and I'll get all depressed and shit. But after going to the gym consistently, now when something "bad" happens, it's really easy to "force" my mind in a positive direction. IMO it's the best way to break out of a bad mindset.

Secondly, I read below that you like programming. Someone below gave you the link to which should be pretty good. I believe they teach HTML/CSS/Javascript, which is good for front-end and back-end, which means if you like web development, that's literally the most minimal amount of languages you'd need to learn. Maybe a goal you can have for the time being is to learn these skills while thinking of a cool web application that you can make. That way by the time you feel comfortable developing in those languages, you can build a project. Then you can learn new tools and build more projects with those new that. And you just keep doing this. After while you'll have a bunch of awesome projects you can put on a resume and you'll have the skills to back it up. I'll link you to some of the stuff that I found useful:

- (So you know what technologies you should learn. Yeah i know it says 2015, but it still applies)

- (So you know what it takes to get a dev job)

I hope you get the chance to read this and I hope it helps! GL MAN!

u/SteveStoney · 3 pointsr/workout this should be a staple of every person starting the gym. If you're not much into reading, then check out author's YouTube channel.

Always start with a warm up, rowing machine is generally most efficient for the whole body.

5sets x5reps for strenght and slow size progression. If you want to focus mostly on building muscle fast, then go for classic 4x8 or 3x12 approx 3 times a week, day on, and day off, plus weekend off for stretching/foam rolling or anything else that can improve your recovery process, but that's a bonus.

Your goal is a linear progression, meaning you pick a weight that you can complete 1set of 12 repetitions that will challenge you, but not wreck you, because you still have 2 more sets to do. You want to make sure you fully complete every set, without cheating. If you can't do it, that means there is too much weight on the bar. Leave your ego at the door, and drop the weight.
If you can complete all your sets and all your reps with good form, next time you train, you slightly increase the weight, and that will keep you going. At the beginner stage you don't need any fancy techniques like drops sets, iso holds, rest pasues, etc. So don't worry about all that stuff for another year or even two.

For hypertrophy (muscle pump) you want to keep the rest periods between sets to 90 seconds max. Set the timer or just count your breathes.

You will quickly notice that everyone you ask, will give you a different sort of advice, and claim that their plan is the best.
Don't fall for a shiny object syndrome pick a plan and stick with it for 3 months. Track all your numbers, so you know what works and what doesnt.
Take a before picture so you can compare it to your results.

Read up on the diet, but basic premise is that you need to consume more calories that you burn every day in order to put on weight. Aim for 10-15% more kcal than you need. If after a week you see no difference on the scale increase your kcal intake by another 5%
Aim for 1gram of lean protein for every 1lbs of your body weight daily, and eat carbs mostly around the workout time. Clean bulk is always more efficient than eating a lot of crap and then wasting time to burn off the unwanted fat. check out other pics in their gallery in terms of visuals of what to eat and not eat.

Make sure you get your 8h if sleep, because that's when the muscle actually grow. In the gym, very often less is more.

Building bigger muscles in oversimplified terms comes down to the time under tension and mechanical damage that muscle is exposed to, so you want to learn how to contract your muscles properly. Resistance bands are a safe and efficient way to do so. Essentially you want to feel the" burn" in the target muscle.

Additionally you can throw in some creatine (dirt cheap) and very efficient. If you're just starting you will notice gains really fast and you can train to the extreme, since your max won't be big enough to truly tax your central nervous system.

The most important thing is to gather some knowledge first, because you can waste a lot of time doing stuff that's doesn't work. If i had a chance to start again i would have found the best looking personal trainer at the gym, or someone who has clients with the desired results and paid him/her to teach me the basics to significantly accelerate my progress.

Remember that good technique builds the strength, but strength doesn't build good technique. And in this case technique refers to safety and efficiency of moving the load from point a to point b.

Get some good music on your playlist and while you keep your final destination in mind, learn to enjoy the process.

That should be enough to get you started.
If you would like to further deepen your knowledge check this

Good luck and have fun plus don't forget to update us in your progress ;)

u/hell_onn_wheel · 13 pointsr/Python

Good on you for looking to grow yourself as a professional! The best folks I've worked with are still working on professional development, even 10-20 years in to their profession.

Programming languages can be thought of as tools. Python, say, is a screwdriver. You can learn everything there is about screwdrivers, but this only gets you so far.

To build something you need a good blueprint. For this you can study objected oriented design (OOD) and programming (OOP). Once you have the basics, take a look at design patterns like the Gang of Four. This book is a good resource to learn about much of the above

What parts do you specify for your blueprint? How do they go together? Study up on abstract data types (ADTs) and algorithms that manipulate those data types. This is the definitive book on algorithms, it does take some work to get through it, but it is worth the work. (Side note, this is the book Google expects you to master before interviewing)

How do you run your code? You may want to study general operating system concepts if you want to know how your code interacts with the system on which it is running. Want to go even deeper with code performance? Take a look at computer architecture Another topic that should be covered is computer networking, as many applications these days don't work without a network.

What are some good practices to follow while writing your code? Two books that are widely recommended are Code Complete and Pragmatic Programmer. Though they cover a very wide range (everything from organizational hacks to unit testing to user design) of topics, it wouldn't hurt to check out Code Complete at the least, as it gives great tips on organizing functions and classes, modules and programs.

All these techniques and technologies are just bits and pieces you put together with your programming language. You'll likely need to learn about other tools, other languages, debuggers and linters and optimizers, the list is endless. What helps light the path ahead is finding a mentor, someone that is well steeped in the craft, and is willing to show you how they work. This is best done in person, watching someone design and code. Also spend some time reading the code of others (GitHub is a great place for this) and interacting with them on public mailing lists and IRC channels. I hang out on Hacker News to hear about the latest tools and technologies (many posts to /r/programming come from Hacker News). See if there are any local programming clubs or talks that you can join, it'd be a great forum to find yourself a mentor.

Lots of stuff here, happy to answer questions, but hope it's enough to get you started. Oh, yeah, the books, they're expensive but hopefully you can get your boss to buy them for you. It's in his/her best interest, as well as yours!

u/ReverseEngineered · 2 pointsr/learnprogramming

Programming is a tool. I suggest finding another interest that you can apply it to. Robots, graphics, music, animation, sports, economics -- the possibilities are endless. Pick your favorite area, look at what kind of problems there are in that area that people use programs to solve, figure out how those sorts of programs work, and try to solve some of those problems yourself.

A few interesting examples:

  • Project Euler has a set of challenges relating to both math and computer science that will stretch you to learn more about both.
  • Python Challenge is basically a series of puzzles that challenge you to do new and interesting things with Python. Granted, several of the puzzles are quite similar and some of the libraries they reference are deprecated, but it's a place to start for programming challenges.
  • Programming Computer Vision With Python talks all about using programs to do things like find objects in pictures and track them even at different sizes and angles. Lots of great examples.
  • Programming Collective Intelligence talks about putting together data from different sources (primarily websites) and finding patterns. It deals with many machine learning concepts in ways that are practical and interesting. Things like modelling and predicting, optimizing, clustering (finding similarities), searching and ranking, and pattern recognition.
  • Arduino Robotics describes many robots you can build with relatively common parts that can be programmed using the inexpensive, C-based Arduino microcontroller platform. I've made several of these myself.
  • Digital Signal Processing is all about writing software that takes advantage of advanced math to manipulate signals in many ways. It's invaluable for audio, but you see it used with graphics, digital communications, and many other areas.
  • There is a subset of sports fans that really enjoy statistics and software can be very valuable for them. Things like comparing players across eras, predicting future performance, and helping to find high-value players. The general field is called Sabremetrics. I looked deep into it in relation to major league baseball. Two books that I found valuable are The Book: Playing the Percentages in Baseball and Baseball Between the Numbers.
  • Programmable games are cool too. Things like CROBOTS, CoreWar, RoboWar, and Robot Game. It's just as fun building the simulation environment as it is building the bots that compete within them.
  • Pick up any book on algorithms. Learn to apply the basics like binary search, insertion sort, radix sort, memoization and linear programming, Dijkstra's algorithm, and Newton's method for root finding.
  • Grab another book on data structures. Make sure you understand the differences between arrays, linked lists, hash tables, and trees. Learn about unique and useful things like binary trees, radix trees, heaps, and queues.
  • Learn how to write better code. I recommend books like Code Complete and The Pragmatic Programmer.

    Whatever you do, as you clearly pointed out, you have to be interested in it or you'll grow bored and give up. Find something that is interesting to you and pursue it as wide and deep as you can.
u/shhh-quiet · 2 pointsr/learnprogramming

Your mileage with certifications may vary depending on your geographical area and type of IT work you want to get into. No idea about Phoenix specifically.

For programming work, generally certifications aren't looked at highly, and so you should think about how much actual programming you want to do vs. something else, before investing in training that employers may not give a shit about at all.

The more your goals align with programming, the more you'll want to acquire practical skills and be able to demonstrate them.

I'd suggest reading the FAQ first, and then doing some digging to figure out what's out there that interests you. Then, consider trying to get in touch with professionals in the specific domain you're interested in, and/or ask more specific questions on here or elsewhere that pertain to what you're interested in. Then figure out a plan of attack and get to it.

A lot of programming work boils down to:

  • Using appropriate data structures, and algorithms (often hidden behind standard libraries/frameworks as black boxes), that help you solve whatever problems you run into, or tasks you need to complete. Knowing when to use a Map vs. a List/Array, for example, is fundamental.
  • Integrating 3rd party APIs. (e.g. a company might Stripe APIs for abstracting away payment processing... or Salesforce for interacting with business CRM... countless 3rd party APIs out there).
  • Working with some development framework. (e.g. a web app might use React for an easier time producing rich HTML/JS-driven sites... or a cross-platform mobile app developer might use React-Native, or Xamarin to leverage C# skills, etc.).
  • Working with some sort of platform SDKs/APIs. (e.g. native iOS apps must use 1st party frameworks like UIKit, and Foundation, etc.)
  • Turning high-level descriptions of business goals ("requirements") into code. Basic logic, as well as systems design and OOD (and a sprinkle of FP for perspective on how to write code with reliable data flows and cohesion), is essential.
  • Testing and debugging. It's a good idea to write code with testing in mind, even if you don't go whole hog on something like TDD - the idea being that you want it to be easy to ask your code questions in a nimble, precise way. Professional devs often set up test suites that examine inputs and expected outputs for particular pieces of code. As you gain confidence learning a language, take a look at simple assertion statements, and eventually try dabbling with a tdd/bdd testing library (e.g. Jest for JS, or JUnit for Java, ...). With debugging, you want to know how to do it, but you also want to minimize having to do it whenever possible. As you get further into projects and get into situations where you have acquired "technical debt" and have had to sacrifice clarity and simplicity for complexity and possibly bugs, then debugging skills can be useful.

    As a basic primer, you might want to look at Code for a big picture view of what's going with computers.

    For basic logic skills, the first two chapters of How to Prove It are great. Being able to think about conditional expressions symbolically (and not get confused by your own code) is a useful skill. Sometimes business requirements change and require you to modify conditional statements. With an understanding of Boolean Algebra, you will make fewer mistakes and get past this common hurdle sooner. Lots of beginners struggle with logic early on while also learning a language, framework, and whatever else. Luckily, Boolean Algebra is a tiny topic. Those first two chapters pretty much cover the core concepts of logic that I saw over and over again in various courses in college (programming courses, algorithms, digital circuits, etc.)

    Once you figure out a domain/industry you're interested in, I highly recommend focusing on one general purpose programming language that is popular in that domain. Learn about data structures and learn how to use the language to solve problems using data structures. Try not to spread yourself too thin with learning languages. It's more important to focus on learning how to get the computer to do your bidding via one set of tools - later on, once you have that context, you can experiment with other things. It's not a bad idea to learn multiple languages, since in some cases they push drastically different philosophies and practices, but give it time and stay focused early on.

    As you gain confidence there, identify a simple project you can take on that uses that general purpose language, and perhaps a development framework that is popular in your target industry. Read up on best practices, and stick to a small set of features that helps you complete your mini project.

    When learning, try to avoid haplessly jumping from tutorial to tutorial if it means that it's an opportunity to better understand something you really should understand from the ground up. Don't try to understand everything under the sun from the ground up, but don't shy away from 1st party sources of information when you need them. E.g. for iOS development, Apple has a lot of development guides that aren't too terrible. Sometimes these guides will clue you into patterns, best practices, pitfalls.

    Imperfect solutions are fine while learning via small projects. Focus on completing tiny projects that are just barely outside your skill level. It can be hard to gauge this yourself, but if you ever went to college then you probably have an idea of what this means.

    The feedback cycle in software development is long, so you want to be unafraid to make mistakes, and prioritize finishing stuff so that you can reflect on what to improve.
u/BegorraOfTheCross · 3 pointsr/veganfitness

Personal trainers don't need to know what they are talking about.
>A number of certifications are available in the U.S., although a number are not accredited. Most require a high school diploma, cardiopulmonary resuscitation (CPR) and automated external defibrillator (AED) certification, and some type of examination.[6]
A 2002 investigation evaluated a random sample of 115 personal trainers using the Fitness Instructors Knowledge Assessment (FIKA) (which measures knowledge in nutrition, health screening, testing protocols, exercise prescription, and special populations). The study described that:[14][15]
70% of those surveyed did not have a degree in any field related to exercise science.
Those who did not have a bachelor's degree in an exercise science-related field scored 31% less on average than those with a bachelor's degree or higher in the field.
Those holding one of two specific certifications (the American College of Sports Medicine (ACSM) or the National Strength and Conditioning Association (NSCA) certification) scored 83% of the questions correctly on average. Those holding any certification other than ACSM or NSCA answered only 38% of the questions correctly.
Years of experience was not found to be predictive of personal trainer knowledge.

With that said - if I were a personal trainer I would discourage people from doing barbell work, to at least emphasize they need some study. Probably some liability if someone hurts themselves, and some people are morons. At any rate take what trainers say with a lot of salt.

I gained about 15 pounds in a year doing a simple beginner program 3 times a week. This was not at all the center of my life - working and going to school for CS at the same time. I did spend quite a bit of time studying how to do the exercises correctly. With a beginner program, you will start with very low weight (which increases fast) in order to get to practice the exercises.

Focusing on learning how to do the exercises, and going regularly is probably the most important thing to build strength. Plan for the long-term, this is extremely extremely important. Your purpose at first is:

1) to go to learn how to do the exercises well,

2) to go religiously.

Doing these two things are what you reward yourself with the sense of "job well done" for. You will lose strength depressingly fast by not going regularly. 3 times a week for 30 min to an hour is not a big deal.

You can build significant strength without bulking/bodybuilding. Having a lot of strength will make bodybuilding/bulking easier. This is mostly to keep in mind for later, when it is time to shift to an intermediate program.

Stronglifts 5x5 is listed on here.

Stronglifts has been very successful for a lot of people, and gets a lot good credit. The program is extremely simple so you do not have to waste time thinking of what to do. The phone apps by the author are exceptional. Negative things about the program are generally complaints that it is a beginner program. There will come a point stronglifts will stop producing gains, and it is time to shift programs. When that time comes it will make quite a bit of sense in your body why. Stronglifts is a great beginner program.

I still do it, with some minor alteration, even though I know I need to shift, because it's good enough for now for me. Easy & meditative and the gains still come. Well lifting heavy weights is hard, but easy in the "flowing like water" sense.

Here's an easy to-do list for you which will work:

>1) Go to, watch his vides on how to do the exercises, and how to do the program.
2) Study the exercises!
3) Download phone app
4) Do your first session at the gym
5) Begin reading Starting Strength. Ignore a lot of the dietary advice.
6) Watch videos on youtube & continue improving your form.
7) Continue going to workouts religiously.
8) Start eating for muscle growth.

I have diet listed last here, because in one sense it is the least important. In order to gain weight, you will have to eat a lot. And a couple months into the program you will need to eat well to make noticeable strength gains. But do not worry about this at first. As you go regularly & get good at the lifts (because that is the goal that matters), after a period of time you will see how not eating/sleeping enough makes you weaker.

It will be quite visceral when you get to higher weights, and after months of (going religiously!) experiencing the difference of days when you eat/rest well vs. not, and the iron will grace you with a powerful visceral drive to change your diet. It's like free motivation at that point. When you have been going regularly for months, then the diet becomes extremely important. Don't worry about it much at first. You will make fast gains even with a crappy diet at the start. But damn sure go to the gym when you are feeling weak, that is what will push your understanding of what to eat.

And again - you can gain a lot strength without bulking much, and that strength will help you bulk. So even if you don't bulk for a few months, it is not a loss. Just keep going.

I will add, for a pre/post workout shake, I get pea protein from . Pea protein has had some studies place it competitively with whey. I mix it with water & juice, and I will add creatine. My perspective is that not eating animal products slows bulking, though that tends to be hearsay here. Who cares when it's the right thing to do though.

u/firestorm713 · 6 pointsr/gameDevClassifieds

TL/DR: Know what you want to be paid, be specific, show off your work, your resume isn't graded, and interview the company as much as they interview you.

Got my first industry programming job by posting on here about a year ago. I'd just graduated uni and was looking for a serious gig.

It took three or four posts over two months before I finally was starting to get decent offers. The ads that failed were generic, didn't market my skills well, and weren't specific enough as to what I actually needed, thus I got lots of Rev-Share-only offers, lots of $400 a week offers, and lots of "exposure" offers. There were a few offers for positions I was in no way qualified for, either.

For reference, this and this were my unsuccessful ads, this was my successful one.

I'm actually just now starting to look for a new job (my contract is up), and revamp my portfolio site, and my general advice is:

  1. Know your worth up front. Figure out what your time is worth to you, and then ask for a little more than that (because you'll probably settle for less than your up-front offer). Make it clear what you won't accept, too. On my ad one of the things my boss said had caught his eye was that I was extremely explicit that I was looking for a job, not a quick gig. I have loans to pay off, a family to support, and rent to pay. Rev-share-only was not okay, nor were tiny $400 a month contracts. He could tell I was more than just a student looking for a meal ticket, but that I was ready to start my career.
  2. Market a particular specialty, not general expertise. A character artist or engine programmer will get way more targeted offers than someone who markets themselves as a generalist.
  3. Words mean nothing. Visuals are everything (or sounds if you're an audio/music/sound person). Have demos on your website (get a website for free on if nothing else) that people can see, touch, play with. This is whether you're a programmer, artist, designer, or sound person. If you can point to a project, talk about what you worked on, and point to specific things you did in an interview, all the better. If you're a programmer, make public projects on GitHub.
  4. Don't sweat your resume. More specifically, don't feel like you're a slave to one format or another. It's not a paper that's going to be graded by a teacher. It might spend 5 minutes in front of a recruiter or potential employer, so you want to get the most important information up front. If you're not super experienced, functional resumes are a great asset, because you can list unpaid projects (like ones you did at school, or just for fun), and forego unhelpful work experience like that retail job you had for five years that has no bearing on your programming/artistic/musical/design ability.
  5. Interview the Interviewer. They need to be happy with you, yes, but you need to be happy with them. Ask lots of questions. Show interest. Listen. Find out their scope, and whether it's the right amount of work for you. Make sure that your expectations and theirs are crystal clear.
  6. Finally, one third of Kickstarter projects succeed. Let that sink in. While your chances of successfully Kickstarting a game are nonzero, and there are tons of things you can do to affect the outcome of your Kickstarter to give yourself a better chance of succeeding, it should be clear that you should not accept "payment after Kickstarter" as a possibility, unless you're confident that you can get paid (or okay with not being paid).

    Bonus: If you're a programmer, get "Cracking the Coding Interview". It is amazing and will help you figure out what potential employers are looking for.

    edit: ._. oh. This is a bit old. Oh well. Hopefully someone'll see it and get something from it.
u/psykocrime · 8 pointsr/relationship_advice

> my info: im a super nerd. like i follow the pro starcraft scene and love space, science math etc. in really tall and am fairly lanky.

That's not necessarily bad... but if you want to do well with women, you'd be well served to not look the part of a "super nerd." Dress fashionably, but with a unique edge that sets your style apart from others. If you need help figuring out how to do that, hit up some of your female friends for advice, peruse GQ or Esquire or Mens Vogue, whatever.

> I tend to only have crushes on best friends and my last crush was when i was 17 (different person). Ive been caled a sweet heart and get frustrated when guys are disrespectful.

Guys get like that when they are scared to break rapport with women, and the only thing they can do is try to use pure "comfort game" to get close to the girls. Unfortunately, the result - as you may have noticed - is not usually favorable. Building comfort is important, but you have to do more... if you want girls, you have to project the vibe of a confident, mature, masculine, "in control", sexual man who "gets it." The "nerdy, insecure, shy, awkward teenage geek" vibe is a lot less effective.

> Ive been caled a sweet heart and get frustrated when guys are disrespectful.

You probably have both Nice Guy Syndrome and a touch of Disney Fantasy. I highly recommend you read the Dr. Robert Glover book No More Mr. Nice Guy, and the Neil Strauss book The Game. The former should help you understand more about asserting yourself, establishing boundaries, and being more authentic in your interactions with people. The latter will blow your mind in regards to understanding how men and women interact.

After that, it might not hurt to read Way of the Superior Man by Dave Deida.

Also, to disabuse yourself of the notion that women are all sweet and pure and innocent and virtuous and made of light (or sugar and spice and puppy dog tails, whatever) spend some time reading stuff like My Secret Garden by Nancy Friday, or The Good Girl's Guide to Bad Girl Sex by Barbara Keesling, or Chelsea Handler's My Horizontal Life.

Finally, read Sperm Wars by Robin Baker. That will make a great many things much clearer.

u/protectedneck · 3 pointsr/dndnext

I agree with everyone here. If they are friends/friendly already then that makes things easier.

I would say that you want to remember that you're the adult in the situation. So you're going to have to be patient. They're teenagers who might get side-tracked or not having the same expectations that you do for the game. So all the normal advice of "talk with your players to resolve problems" goes doubly here, since you have that extra layer of being the "mature one" in a position of power for the group.

Make sure you schedule times. Find out when everyone wants to play and what times work for them. Average sessions are between 2-4 hours. I like 2 hours for weekly games. Try to be flexible, since ideally this is a fun event and not a second job. But it's important to be firm about things like "if you can't make it to the game, you have to let me know at least a couple hours in advance." You might have to figure out ride situations, which means potentially coordinating with other parents. You might have to explain what it is that you're inviting their child to do with you. Some people are touchy about their kids playing D&D for a variety of reasons.

As far as the game is concerned, the D&D starter set has a great intro adventure and is basically all you need to start playing. Give everything a read a couple times to really familiarize yourself with the rules and adventure. You might want to pick up the Player's Handbook (PHB), Monster Manual, and Dungeon Master's Guide (DMG), but I would hold off until you have at least a couple sessions played. You will likely need more dice. I recommend the Chessex Pound-o-Dice. I have a big bowl filled with dice on the table that people can use.

You can get pretty deep down the rabbit hole as far as other accessories go (figures, terrain, dice sets, extra books, DM screen, playmats, custom minis). I find it's best to just play with what you have and then pick up more things as you find them useful ("oh, I wish I had a dry erase mat for that combat, let me pick one up for the future").

As far as play goes, modern D&D is much more narrative. Player characters tend to be more hardy after a couple levels than in older editions. There's less emphasis on plundering dungeons for treasure and more emphasis on telling a combined story (that sometimes involves plundering dungeons). Characters are less likely to die and have a lot of resources at their disposal to succeed.

If you haven't already, I recommend checking out youtube to get an idea for how modern D&D looks when its played. Youtube channels like WebDM and Taking20 have lots of tips on running D&D. There are LOADS of live-play D&D games that you can watch. Something like Acquisitions Incorporated or Force Grey are worth a watch, if only to get an idea of the pacing of a typical D&D session.

Other than that, just have fun man! There's a million different ways to play D&D, and it's nice that you've got an opportunity to use this to connect with your daughter and her friends. You will encounter lots of individual problems as they come up, but that's normal. Being the DM is about being flexible and creative and solving problems. Thankfully there's a lot of resources out there these days for finding how other people handle their issues. A quick google search will provide all kinds of info :)

u/apieceoffruit · 1 pointr/ProgrammerHumor

Oh god where to begin?


Well I Like to think there are level of programming understanding that are relatively tiered.

Tier 1 - How to Code

This one is tough as there is no real definitive best answer. My personal primer of choice is

  • Sams Learn Java in 24 hours.

    > Fyi - , that is not "in one day" that is , in 24, 1 hour sessions equating to a hypothetical 4 college lectures a week lasting a month and a half of intensive training. A huge amount of homework is required to accompany that primer.

    so now you can write an app, what next? well. to finish the thought:

    Tier 2 - How to Code...

    so other programmers don't want to hit you over the head for each line in your longest function screaming CYCLOMATIC COMPLEXITYYYY


    Here we talk about how to program
    properly* You want to be looking up Uncle Bob . Head over to


    and check out his video form of his famous book:

  • Clean Code....then buy that book.

    Now you should be writing code that doesn't make other programmers eyes bleed.

    Tier 3 - How to Code..To Solve Problems

    Here we talk about design patterns. Now, you will bump into a lot of debate over their value but...that is stupid. that is like some people saying all carpentry should be done with a saw and another group saying carpenters should never use a saw. Design patterns are names for recognised ways to solve problems you will hit every day in your programming. They may not always work in your case but at worst they will have you thinking around a problem better.

    For a primer, check out:

  • Head First: Design Patterns

    In fact the entire head first series is great, It is like the For dummies series for programming principles. Great for morons like myself.

    With that read, get the real design pattern book:

  • Elements of Reusable...

    Don't expect to actual understand almost any of this. I read that book cover to cover and it didn't actual click for me till it slapped me in the face when i was in the real world developing business tier applications. Although having read it so many times meant I new which pages to flip to when I was ready.

    Tier 4 - How to Code... For Users


    This is a whole different kettle of fish. Now you may have written the perfect app to do X with only two buttons, you will find quickly that users are adept at licking the buttons in just the correct order to cause your application to explode. You need to program applications so the cast of jersey shore can use it.

    I am a fan of the blog:

  • Joel on Software.

    Joel (Co-founder of Trello) covers a lot regarding front facing applications and UX that is required reading...even if he a bit cavalier on his approach to testing.

    This is the next part. Testing. You are going to want to Learn about Defensive Programming andTesting. There is a wealth of tutorials over on pluralsight for these.

    Tier 5 - When NOT to Code


    This is a hard step to get to. Realising that copy and pasting code is GREAT!..but for the right reasons. Once you jump over the initial Copy+paste = the greatest thing in the world barrier , most developers grow a level of defiance that borders on the absurd. Preferring to rewrite the wheel instead of using ...the wheel. When you can honestly say you
    could* program it from scratch, it is perfectly okay to use libraries and apis.

    This is where I go to:


    and hit up Sacha and others. They show you fairly feature complete and interesting implementations of problems, not just the one or two lines you get from Stack Overflow. Granted this is miles more complicated but it shows not only how to do it, but how to do it right and WHY to do it right. and github of course.

    Tier 6 - Learning From Mistakes


    Now that you have climbed code mountain and are absorbing the combined knowledge of all the internet geniuses, it is time to see where you went wrong.

    Head over to


    and post you functional applications. There a number of people will politely tell you but how to do it better, general improvements in design, logic and reusability. take you through the solid principles and much more. Also..say hello to me if you like :P.

    You don't even have to learn exclusively from your own mistakes.

    check out:


    and cringe at some examples of real software....and if you don't understand why you should be cringing..learn.


    Tier 7 - How to think like a programmer

    Now things get a little bit meta. The best way to become a great programmer? don't JUST read programming. Read books like:

  • Zen and the Art of Motorcycle Maintenance

  • Don't Make Me Think

    Read anything and everything, exercise your mind. books on architecture, books on carpentry. any kind of design and problem solving with stretch your understanding of how to climb those brick walls you will hit.

    Read some of the more general programming blogs, like:


    Read anything and everything.

    Final Thoughts


    Have fun.

    Check out:


    I would also say as a personal suggestion, although i left it out of the mandatories up above as it is a bit controversial, I suggest going TDD. Test driven development. It is not for everyone, a hard ethos to get into but in the real world, in business applicable coding...a life saver. Uncle bob is the man for that again.

    Finally I am a fan of Rubber Ducking. Great way to work though problems.

    If you want some final reading, I left them out because everyone and their brother has these (and most of the above) in their top 50 programming book lists so it is a mite redundant:

  • Code Complete
  • The Mythical Man Month
  • The Pragmatic Programmer
  • Refactoring: Improving the Design of Existing Code


u/Vitate · 2 pointsr/cscareerquestions

My Story

Hey pal, I was in a similar boat about 8 months ago. It was my senior year as an Economics major, and after taking a programming class, I instantly fell in love with it. I crammed a few more programming classes in before graduating, but in the end, I sure as hell wasn't employable as a software engineer.


I had a choice: become a data analyst (the path I was currently on) or follow the software engineering dream. I chose the latter.


I decided to go to a (remote) coding bootcamp after college. The program was 6 months. It taught web development (Node, React) and some very basic CS fundamentals. I spent my free time outside the bootcamp inhaling all the computer science and industry information I could. I did this because I wanted to be a competent programmer. I found it fun.


This week I had my second onsite. I expect to receive a full-time software engineer offer (my second offer so far) later today, and I have 4 other onsites in the near future (a big 4 + a few startups). It has been a heck of a lot of work to get here, but if you want it badly enough, it's possible.


My Tips

  • Try not to be intimidated by these tips. Software engineering is something that you take little bites out of. You cannot become an employable developer in one bite, and sometimes the field can be intimidating.
  • Your options right now are self-teaching, a coding bootcamp, or a CS master's degree (might be hard to get into a good program without a bit more relevant experience, tbh.).
  • It's going to be pretty difficult to break into anything other than web development for your first programming job without a CS degree. Titles like Front-end Engineer, Full Stack Engineer, Backend Engineer, and Software Engineer (at a web company) are within reach. More specialized titles probably aren't very realistic.
  • Basic toy projects (i.e., simple HTML/CSS or similar) probably aren't enough to get significant attention. You need things more complex, like full-stack applications built from scratch. This means a working backend, a working database, a modern front-end (using a framework like React, etc.). Here's my portfolio if you're curious about the type of apps I mean.
  • Other types of programming applications outside of web dev are also fine, as long as they are sufficiently complex and interesting.
  • Put your projects on your GitHub no matter what. Learning how to commit code to GitHub is an important industry practice. Having a green GitHub history makes you look better.
  • Try and build a portfolio once you get better at coding. Don't kill yourself making it look amazing, but do try and make it look good. Not everyone will care about your portfolio, but some people will. I got an interview just based on having a nice portfolio.
  • Your university course sounds like a great primer, but you need to go deeper to be competent enough to pass interviews. I took similar courses at my university, but what really helped me was going through a few textbooks (1, 2, 3 -- some suggestions) and watching MIT 6.006 lectures. You will still have gaps in things like web security, scaling systems, networks, and operating systems, but I wouldn't spend a ton of time learning those topics as a new grad. Knowing the basics can be helpful though, because these things do definitely come up in interviews.


    Happy to answer any other questions you may have. I'm not an expert or an experienced software engineer yet, but I've walked the path you're considering, so hopefully my tips are helpful.
u/bbcakes413 · 26 pointsr/Brogress

Most, not all, of these other responses are more in line with "why" quit gaming or how to balance it, but your question is HOW did I quit.

So here's the framework, then following that are my personal steps.

Framework 1: If you remove 5 hours of gaming, you don't have to replace it with 5 hours of super productive life habits. I removed 5-6 hours of gaming a day but it enabled me to add 1-2 hours of health/fitness, and some time to eat better, then I slept an hour earlier, etc., but I still dicked around and did useless shit for 2-3 hours of that 5 hours of previous gaming time. It doesn't have to be 1:1 bad habit removal to amazing habit add in. I still sit on Twitch and zone out for an hour or two here and there while I browse the internet, but it's easy to put it down and go to the gym or not wait until I'm starving to eat, which makes it easier to eat better.

Framework 2: Identify your level of addiction. Mine is a proper addiction. I think I can reinstall and play within reason today...for a week...a month...6 months...but at SOME point I fall off the wagon and to the bottom of the well. So I have to legit just straight up accept that I don't have the discipline to play in moderation like other people.

Framework 3: With any habit you have to analyze what it is rooted in. In my gaming habit it was a few things:

  1. Anxiety/stress coping. If I go nuts on a 5 hour Path of Exile binge, my brain literally can't process the work worries I have, worrying about the girl I'm dating and the details of that, planning my financials and freaking out about student loans, etc. You get the point. It literally overloaded my mind so that I couldn't relate to anything and then I'd play til exhaustion and pass out. Rinse repeat. Obviously bad sleep. Bad sleep means bad performance at work. Obviously a lack of self-respect because I wasn't in control of my life and was behaving with such avoidance behavior that I was under an avalanche of life.

  2. Social community. This one isn't inherently bad but gaming was a way for me to hang and shoot the shit with friends in discord while we played games. Not all the roots of a habit are/have to be bad, BUT in order to replace the habit you have to replace the roots.

  3. Quantifiable progress. Leveling up, gearing up, ranking up, all rewarded my left brain tendencies for progress and order.

  4. Just fun. Straight up.

    So here's what I did...

  5. I identified the games that I was most likely to binge. MMOs, endless dungeon crawlers, competitive games. One by one I deleted my accounts and uninstalled. I only was left with games that I could play in bursts for 30-45-60-90 mins at a time (vs. like 4-5-6 hour binges). I would pop on, play a bit, get bored and close them. Or single player games with finite playability I would beat and stop installing new ones. Eventually uninstalled Stream and the like (I'm a PC gamer, the equivalent would be selling your console).

  6. I had to make it a point to socialize with friends more, even just a beer after work or something to replace #2 above. And still talk to those gaming friends but only as long as they respected my desire to stop gaming soon.

  7. Start going to the gym to address #1 from the framework section above. It really does help with anxiety and stress. It's two steps forward and one back though - you feel great and mentally healthy, then you HAVE to address the shit that was causing you to dive into unhealthy gaming habits to start with..."oh shit my girl sucks and I need to address that"...."oh shit, let me look my student loans in the eyes and address that"....etc. But it's progress and only gets easier.

  8. I made a ridiculous Excel spreadsheet for framework #3 above. Weight, rolling 7 day average, mood, sleep tracker, resting heart rate, reading, gaming, even porn, drinking, anything I wanted to be more aware of. In tracking those things I could start managing them and in managing them I got the dopamine reward of leveling up, kill streaks, ranking up, etc.

  9. Naturally you will be more confident as you do this - naturally you will seek fun, you will be more comfortable to find other sources of fun. I had wanted to go rock climbing for YEARS. I did it for the first time two weeks ago. It was the most fun I've had in ages.

    On my spreadsheet I have had days where I ate like shit or drank or missed days in a row of the gym. Far from perfect. My reading habit hasn't taken hold like I wanted it to. But I'm fucking HAPPIER. And you know what column is PERFECT in my spreadsheet? The gaming one. That's my keystone habit. That's my FIRST domino. Find yours and make incremental, deliberate changes.

    Message me if you wanna chat, I got your back.

    PS: Read this:
u/bonekeeper · 2 pointsr/cscareerquestions

I looked at the FreeCodeCamp curriculum, it looks good for an entry level javascript developer, so since you already started it, you might as well finish it (since, like I said, everybody implicitly expects you to know at least one of python/js/perl as well as HTML+CSS).

2 hours per day is a bit too little IMO - but I understand that it's hard to find time when you have a demanding job and a family that needs time and attention. Just study as much as you can, 2h being the mininum (do keep in mind that CS students, your competition, will be studying at least 8h/day for at least 4 years with tons of homework and more advanced material). So you should probably focus on studying more in the weekends (just typing and thinking about this, I'm actually lucky I started when I was a kid, with all my bills paid for!)

Anyways. You should focus on getting a job first - do keep doing the FreeCodeCamp, as many hours in the day and weekends as you can. Explain to your significant other, if you haven't already done so, your plan - that you're studying hard to upgrade your career, that it might take some time away from them but it will pay off in the long run, etc. Ideally you should be studying at least 4h/day, so try to keep close to that, study more on weekends if necessary. Check this guy for reference on his plan and what he's studying (and note that he's studying full-time - a luxury, I know, but just to put your 2h/day into perspective). This guide is helpful too. Note that you don't need to know all that to get an entry-level development job, but keep that plan in mind for the long run (as you progress your career).

Once you finish the FreeCodeCamp, or even before (I would say, once you finish "Basic Algorithm Scripting"), try doing some local interviews if you can do it without jeopardizing your current job just to get a feel of how interviews work. You won't be trying to get a job (but hey, if you do, awesome), this is just to get your feet wet on interviewing (which is a skill in itself). Since you're not shooting to get a job right now, you won't be as nervous, which is the state of mind you want to be in. If you're relaxed you can talk better, think better, make jokes, be more presentable, which is great - this will put you in the right mood for your future interviews. Try finding people online that can do mock interviews with you in the area you will be focusing on (web/javascript/frontend initially).

Once you're past the basic HTML/CSS part and you start studying JavaScript, I suggest you look into Python as well at the same time. It is a very simple language, quick to learn, and will double your opportunities for employment. As you study both at the same time, you might notice that you like one or the other better - if that happens, focus more on the one you like better, this will accelerate your learning and get you ready for a job faster in your chosen language.

At one point you'll finish HTML/CSS and JavaScript+Python (finish as in be comfortable with them - you'll see that you'll still learn new things as years go by, it will take a few years for you to "master" them). After you're comfortable with JavaScript and Python (and hopefully gainfully employed in development), start studying that book (where you'll learn a GREAT deal about many important things, it will be a dense read, and you will come out of it knowing assembly and C) and then you can focus on algorithms and exercising your thinking with algorithmic puzzles and how computer networks work, operating systems and everything that is generally on this list.

Then after studying all that and with 2-4 years of experience under your belt (and still studying 4h/day), you can start thinking about the next level in your career and preparing for it (larger companies, mid to senior positions, etc) - add a couple more years of experience and you'll be ready to interview for large Valley companies (Google, Apple, FB, etc).

If you plan to self-study all the way through and never join an University, you can look into full-fledged CS courses online and follow that to get a complete theoretical background on CS (that all your colleagues will eventually have and expect of you, at some point in the future).

u/Terrulin · 1 pointr/dndnext
  • To echo everyone else, I would also say start with the starter set because it has everything you need to start, including a pretty nice set of dice. You could get away with this for your first session, but you will probably want some
  • dice This may be your most cost effective way of having a set for everyone, and enough spares for people to grab from for crits and spells like fireball. Everyone will eventually get nicer sets they like more, but this is a good way to start with matched sets. Depending on how happy people are with the player options in the starter set, your next investment will either be the
  • PHB for more player options, spells, items, and guide lines for how things should work. This is far and away the most import of the three books. As most people have said, you will probably get to the point where everyone wants access to this book. During play, you will probably want 2-3 of these at the table.
  • Battle Mat D&D can be played in Theater of the mind, but grid combat makes a lot of rules easier to implement and officiate with a grid. The one I linked is pretty big without being overly huge (there are larger ones), and it is vinyl which makes it durable, and it erases pretty well with good wet erase markers.
  • Miniatures is something else entirely. Most of the groups I play with have more than enough for me to ever have to buy any. Some players will make or buy a mini for his/her character. There are the round cardboard tokens that you could use for cheap. I run a D&D game on Fridays at the school I teach at and have the students use one of their dice as their mini. Monsters are usually balls of playdoh.
  • After finishing of the LMOP (the adventure in the starter's set) you will either want to pick up one of the other adventures like Out of the Abyss or Princes of the Apocalypse. You might need a Monster Manual to go with it. PotA has a digital supplement with the extra monsters, while OotA does not.
  • The DMG is optional really. It is great for magic items, alternative rules you could use, and world building strategies. You'll want a copy eventually, but like the MM, you wont need more than 1.
  • Other things. Look around for things like the Elemental Evil Player's Guide and Unearthed Arcana articles. They have a bunch of free content you could use in your games. They are usually rough drafts so they might be imbalanced, but you might find something you really like in there. There are also tons of homebrew monsters, classes, races, and items if you wanted to expand your game that way.

    angel14995 has a great summary of all the books. This list is more useful as a logical purchasing progression guide.
u/TheAdventMaster · 3 pointsr/learnprogramming

Something like Code: The Hidden Language of Computer Hardware and Software may be up your alley.

So may be From NAND 2 Tetris, a course where you build a computer (hardware architecture, assembler, OS, C-like compiler, and programs to run on the OS / written in the compiler) starting with just NAND.

At the end of the day though, the way things work is like this: Protocols and specifications.

Everything follows the same published IPO (input, processing, output) standards. Stuff is connected to and registers expected values on expected peripherals. The CPU, motherboard, graphics card, wireless modem, etc. all connect in the right, mostly pre-ordained places on the hardware.

In this vein, there's firmware level APIs for then communicating with all of these at the BIOS level. Although as far as I'm aware, "actual" "BIOS" is no longer used. UEFI is instead:

This is what Firmware is / is built on-top of. Operating systems build on top of these. System calls. Operating systems communicate under the hood and expose some number of system calls that perform low-level actions like talking to devices to perform things like file access or network I/O. A lot of this stuff is asynchronous / non-blocking, so the OS or system will then have to respond to an interrupt or continuously check a registry or some other means of getting a response from the device to see if an operation completed and what its result was.

Loading the OS is one thing the BIOS is responsible for. This is through the bootstrapping process. The OSs are located at very specific locations on the partitions. In the past, the only command you had enough room for within BIOS / pre-operating system execution was to load your OS, and then the OS's startup scripts had to do everything else from there.

Once you have an operating system, you can ask the OS to make system calls and invoke low-level API requests to get information about your computer and computer system, such as the file system, networks, connected drives and partitions, etc. These calls are usually exposed via OS-specific APIs (think the win32 API) as well as through a command-line interface the OS provides.

New devices and I/O from/to those devices communicate through firmware, and interrupts, and low-level system calls that are able to communicate with these firmware APIs and respond to them.

Just about anything you can think of - graphics, audio, networking, file systems, other i/o - have published standards and specifications. Some are OS-specific (X windowing system for Linux, DirectX win32 API or GDI on Windows, Quartz on Mac, etc.). Others are vendor-specific but don't seem to be going anywhere (OpenGL, then nVidia vs AMD driver support which varies across operating systems, etc.).

The biggest hardware vendors and specification stakeholders will work with the biggest operating system vendors on their APIs and specifications. It's usually up to device manufacturers to provide OS-compatible drivers along with their devices.

Drivers are again just another specification. Linux has one driver specification. Windows has another. Drivers are a way that the OS allows devices and users to communicate, with the OS as a middle-manager of sorts. Drivers are also often proprietary, allowing device manufacturers to protect their intellectual property while providing free access to use their devices on the OS of your choice.

I'm not an expert in how it all works under the hood, but I found comfort in knowing it's all the same IPO and protocol specifications as the rest of computing. No real hidden surprises, although a lot of deep knowledge and learning sometimes required.

When we get to actually executing programs, the OS doesn't have too much to work with, just the hardware... So the responsibility of slicing up program execution into processes and threads is up to the OS. How that's done depends on the OS, but pretty much every OS supports the concept in some sense.

As far as how programs are multi-tasked, both operating systems and CPUs are pretty smart. Instructions get sent to the chips, batched and divided by them and the computational results placed into to registries and RAM. Again, something I'm not a huge expert in, and it honestly surprised me to find out that the OS is responsible for threading etc. I for some reason always thought this was at the chip level.

When you include libraries (especially system / OS / driver libraries) in your code, you're including copies of or references to OS native functions and definitions to help you reference these underlying OS or system calls to do all the cool things you want to do, like display graphics on the screen, or play audio. This is all possible because of the relationship between OS's and device manufacturers and the common standards between them, as well as the known and standard architectures of programs designed for OS's and programs themselves.

Inter-program compatibility is where many things start to become high level, such as serialization standards like JSON or XML, but not always. There are some low-level things to care about for some programs, such as big- vs little-endian. Or the structure of ASM-level function calls.

And then you have things like bitcode that programs like Java or JavaScript will compile to, which are a system-independent representation of code that most often uses a simple heap or stack to describe things that might instead be registry access or a low-level heap or stack if it had been written in ASM. Again, just more standards, and programs are written according to specifications and know how to interface with these.

The modularity of programming thanks to this IPO model and the fact that everything follows some standards / protocols was a real eye opener for me and made me feel like I understood a lot more about systems. What also helped was not only learning how to follow instructions when setting up things on my computer or in my programs, but learning how to verify that those instructions worked. This included a lot of 'ls' on the command-line and inspecting things in my debugger to ensure my program executed how I expected. These days, some might suggest instead using unit tests or integration tests to do the same.

u/Blahkbustuh · 3274 pointsr/investing

This sort of thing is like getting hit by lightning.

Imagine this: if you were around in the early 1900's, which car company would you have invested in? There were hundreds of them. Most of them looked pretty good. Even as late as the 1950's Studebaker, Nash, and American Motors would have looked pretty great. You would have no way of knowing Ford, GM, and Chrysler would have been the survivors and good investments.

Moreover, you don't remember it, but in the late 90's Apple was totally on life support. I think it was either Microsoft or Bill Gates tossed them some help, it was so bad. Steve Jobs came back and turned the whole mess around. If your dad had invested in them in 1986, he'd have sold it within 10 years and been happy to have walked away with more than $0.

Moreover #2, the late 90's was the tech boom. Look up some info on Yahoo was the internet titan. AOL was everywhere and bought Time Warner. Dell Computers were huge. Compuserve. The 90's was the same thing as cars in the early 1900's. You had no way of knowing out of all the tech companies that Amazon and Google were going to be the survivors.

You know how Amazon basically used the internet to eat Sears' lunch? That means smart and connected people fully immersed in the retail industry running the biggest retail business in the world and able to afford all the consultants and research they could want couldn't even comprehend what technology was going to do within a decade or two or spot what was going to be their downfall and you think you could have managed to pick Amazon out of all the tech companies at the same time?

Moreover #3, the places where there are spectacular opportunities, they occur to people around the founder and early employees and people in the venture capital industry. You'd had to have known Mark Zuckerberg in college or his parents and been able to lend a nerd with a computer $50k, or been an early employee of a "shaky" at best company. That's the risk you run if you go to work for a startup. If you have claim to a percent or two, if the company takes off, that's huge. But way more likely the company probably flops or gets bought out for a modest amount. Are you friends with college tech nerds? Are they working on stuff that you think giving them $10k's wouldn't be throwing money away? Do your relatives know their relatives? Are you in an area where you'd come into contact with those people?

Additionally, I'm 32. Part of getting older is realizing you've made choices and decisions and they create opportunities and paths and take away other opportunities and paths, and learning how to cope with seeing that you should have done something differently. We're all doing the best we can at the time. If any of our parents had bought $10k or 20k worth of Apple or Microsoft in the 90's they'd be millionaires by now. If my parents had bought a different house on a lake in the same town for a slightly higher price 30 years ago, they'd be in significantly different financial position too. If only my grandfather had bought large amounts of land near where he lived Washington DC during the Great Depression! You made the best decisions at the time, don't live life looking in the rear view mirror and second guessing yourself.

Looking at my situation, I could buy a flashy car that I like and would enjoy a lot or I could take that few hundred per month and invest it. What happens when I'm 60 and have an account with a big number in it? Then I buy the car I'd enjoy having and go on a lot of vacations, except I'll be old. And I don't expect suddenly when I'm older, my feelings will switch around and I'd suddenly start to enjoy spending money and seeing the number go down rather than saving it. And I've talked to my coworkers, a decade ago there was a person in the office where I work now was mid-50's and came down with brain cancer and was rapidly gone. We have other coworkers who die right after retiring, or aren't healthy enough to get much enjoyment. Think about that--you or me could spend our whole working lives saving money for retirement and then die in our 50's or right after retiring and not being able to get any enjoyment from it. And it's not just dying, but coming down with an illness or having a lot of pain. That isn't a very enjoyable life.

And yet I'd rather save money and push that problem out of what to do with it. This is what I think about when I think about whether to get rid of my cheap, working, boring car and consider getting something fun.

I think autonomous vehicles will be a large source of growth in the coming decade. So which company do you think will do it first? Ford, GM, Chrysler, or Tesla? What if Apple or Google or Uber or Yahoo or some company you haven't heard of right now swoops in and does it first? Surprise! You chose wrong. You could redeem yourself if you invested in a car company the tech company chooses to partner with because they know how to tech but not to make cars. Which car company would they partner with? Is it the one you chose?

Healthcare is big. It's 17% of our economy. How do you invest in that for 10 years for now? What if the people start electing progressives and they completely rearrange the healthcare system and do something like eliminate the need for insurance companies or sharply reduce the profitability of pharmaceutical companies?

Don't dwell on hindsighting yourself. If you look at any graph of a stock or anything it is sooooo obvious to spot the times to buy or sell and pick an optimum path through different investments but when you have to do it live you never know what is going to happen. If you had $10k now, do you think you'd invest it right now or do you think we're on the cusp of a recession where if you hang on to that sum for part of a year or more, you can get a much larger return? What do you think, hmm? It'll be so easy to be able to see what you should have done when you're 32 in 2029 and pull up a graph of stocks and what they did in 2019-20.

I don't want to be rude but stop it with the crypto. You know how gambling works because it exploits people who have the inclination in them to say 'just one more for sure!' even with games where the odds are actually pretty low to ever come out ahead. The fear of missing out is what compels people to get involved with it. People who say "If I had put $100 into bitcoin in 2011, I'd have $10 billion now!" like, no. It's exploiting the people like you who want to look at the graph of Apple's stock price and say "if I had bought in '86...". Also last week the Fed announced it's working on developing a peer to peer live payment system--you know one that will use real actual money so actual real people will be able to use it. That is going to diminish the real world use crypto claims to have. Canada already has a system like this and I don't know if European countries do as well.

Read this book, pup.

Basically monthly I buy the S&P 500 index. It's a trade off between how much return I want and how much effort I want to put in. I doubt I'll beat skyscrapers of people with PhD's who are experts in this, know accounting, read boring reports and do all sorts of research, and actually talk directly to the people running companies so I buy the index and won't ever be worse than the market as a whole--which the skyscrapers of people can't consistently beat. I own some other company's stocks separately, like a railroad, an industrial conglomerate, and Google and all three of those have done great. In that book I linked to, a section talks about how you can approximate the market performance with like owning any 25-30 random companies' stocks--because he's from a time before there were actual market indexes you can hold. Lately I've been starting to think that you can probably beat the market if you avoid the obvious loser or stagnant companies that are big enough to be part of the S&P 500. Like just buying and holding blue chips like McDonald's or Coke or IBM or Disney for multiple years will probably beat the S&P 500. You won't get rich enough to be able to retire at 35 that way, something like what Apple did, but you'll come out pretty solid in the long run. At the same time, so like I own say $10k of Google. If the company doubles, now I have $20k. Big whoop. Now I can retire. If the company 10x, I'll have $100k. That's even better but I still can't retire from that. The big companies can't grow so much--how would Google or Apple double in size from where they are now? Apple would have to completely invent a whole new industry again (and it'd have to be like actual AI or something nutty like teleportation). And if any one knew what that was going to be, they'd have done it already. We have RFID tags now and have had them for over 10 years yet stores still would rather pay cashiers than have customers simply walk through an RFID detector.

The next stuff to come is going to be connected with faster internet and reducing labor. Drones and getting rid of human drivers? E-doctor video visits?

u/Genitalhandshake · 2 pointsr/sex

I just read your post and felt empathy for your situatiom. I've been in a similar one myself (I have a small penis and trouble with premature ejaculation). For a long time I thought that I couldnt pleasure women because of it, but I've since changed my mind and I am actually enjoying a trusting and fulfilling relationship right now.

The secret to this is quite simple: girls in general doesn't like to get fucked as much as porn or other men (who are educated through porn) would have is believe. What girls care about is one thing: connection. Trust me.

I'm going to take a wild guess here, but I believe that what you want is to give a woman pleasure. I'll say it again: pleasure. The ultimate way to affirm that you've given someone pleause is that she orgasms right? Now ask yourself: what is it that makes most women experience this pleasure?

Answer: oral sex in a safe and trusting environment that makes the woman feel appreciated and beautiful. This is what makes most women feel appreciated and once I realized it's actually true (by asking people what they enjoyed and reading up on it - see for example the Kinsey Report and Masters and Johnson I decided to try the following:

  • Put intimacy and pleasure first.
  • Learn how to pleasure women orally by employing the techniques in "She Comes First":
  • Understanding what women actually like themselves by reading: "The New Male Sexuality":

    I've tried this on several women since, and trust me - size queens and petite and shy women enjoy themselves tremendously and make sounds of ecstacy in bed with me. And it's my tounge and fingers that makes them come back and choose me over well hung alphas.

    TL;DR - The cock is inferior to the tounge in giving pleasure. If you do it right. Women are not cock-hungry beasts, men are the ones who perpetuate that myth.
u/sjrsimac · 13 pointsr/sex

This is gonna be hard for you to do, but try not to invest your ego in her ability to orgasm.

I know that sounds weird, and you're probably thinking, "but I'm investing my ego in my ability to make her orgasm." Nah, no one can make someone orgasm. Yes, my girlfriend has hands, mouth, and pussy delivered from heaven that makes me feel pleasure I didn't know mortals could know, but the reason I orgasm (or don't) is because of my mental state. If I'm preoccupied, I'm going to have a much harder time coming, whether I'm using my own hand, or if my girlfriend is riding me.

I'm going to take your girlfriend at her word, that she loves being intimate with you and has made her peace with not having orgasms. I'm sure she would enjoy orgasms, they are the definition of pleasure, but if she can't get herself to cum, there is no reason you should beat yourself up for not being able to make her cum.

The best thing you can do for your girlfriend at this point is continue to let her know, both verbally and (more importantly) nonverbally, that you love every single part of her body. If you love eating pussy, kiss her pussy while you're kissing the rest of her body. If you love her ass, make sure you pay attention to it when she's just walking around the house. And it never hurts to pin her to the wall and kiss her just because, you know, she's there.

Finally, I recommend that you read She Comes First by Ian Kerner. That book is more than a series of tips and tricks to hit a woman's sexy buttons. It's a complete narrative that describes the attitude a sexual partner should take when developing a relationship.

u/Wiggledan · 7 pointsr/C_Programming

I've been self-teaching myself C through various books/courses/series the last few months (I'm still not that great), and so I have some suggestions about good places to start learning.


  • The C Programming Language AKA "K&R" by developers of C - It's short/concise and simple, but covers the whole language (because there's not that much syntax to cover), and tons of people swear by it like a bible.
  • C Programming: A Modern Approach by K. N. King - This book is much larger and more in depth than K&R, with around 800 pages and lots of examples and exercises. It's essentially a college textbook and is actually used in colleges.
  • Learn C the Hard Way by Zed Shaw - This one is free and online. I like it because it focuses more on you figuring out things on your own by breaking the code in various ways and having an absolute understanding of every line, rather than just having you copy everything and telling you how it works


  • [Harvard CS50x]( - An awesome, free online course with high production lectures, and helpful videos/tips if you get stuck. It mostly covers C, but it does go into other things (that are still worth knowing) at the very beginning and end.

  • A Free Course for C Beginners by Carl Herold - Not really a full course, just most of the videos. I found this very recently, and the original website doesn't exist anymore. It goes at a very relaxed pace and explains things incredibly well in a way that you will remember. These videos really solidified/helped my understanding of binary, hex, and pointers. I highly, highly recommend it over anything else if you're just starting out.
  • Handmade Hero by Casey Muratori - You can watch and follow along with this guy as he programs a video game from scratch in C. He streams every weekday, usually has a Q&A after, and puts every video up on YouTube. The series starts off with a sort of rushed intro to C, and honestly the whole thing is always at a fast pace and can feel complicated. But that's what it takes to make a game from scratch, and he takes time to explain what everything means. Plus it's mostly all very interesting and useful.


  • Google - google everything, or Bing it, I don't care
  • Stackoverflow - someone probably asked your question before, especially with C
  • /r/dailyprogrammer - Great daily challenges. These are like working out your programming muscles.
  • /r/learnprogramming - Occasional posts about C, and you can ask/find your questions here as well
  • Online C Compiler - A convenient compiler that you can use anywhere to play with simple programs using C standard library functions.

    Other than that, you should maybe look into trying out Linux, because it's more developer-friendly than Windows (such as having a C compiler out of the box). And the whole kernel and many core components of the OS are written in C, which are all usually open source, so you can learn from, and contribute to them.

    Good luck, friend.
u/huge_clock · 1 pointr/investing

>I have a general theory that ~95% of the people recommending this book either did not read it or did not understand it when they did.

Ahh, but let us seperate the difference between a good theory and speculation.

A good theory is one which, upon thorough analysis promises a high probability of being proven true. Operations not meeting these requirements are speculation.

Does your theory rest on the merits, facts and content contained within the pages therein? Can your theory be falsified or is it speculation?

Let us analyze your conjecture and see if it holds any water.

  • Amazon says The intelligent investor has an average rating of 4.6 on 242 reviews and is the #1 best seller in its category: Could it be that all these reviewers have not read the book? Well it seems almost all the reviews have verified purchased and offer specific quotes in their review. The evidence does seem to support the speculative assertion that 95% of people did not read the intelligent investor.
  • Let's go to where The intelligent investor ranks #1 as the undisputed best investment book of all time: Could it be that the Investopedia editorial team reviewed all investment books but forgot to read the Intelligent Investor? I would find that to be a highly speculative theory.
  • What if we look to see what books other professional investors have recommended: By far and away the Intelligent investor reigns supreme. Is it more likely that these investment gurus chose not to read the Intelligent investor and yet recommend it, in some sort of cabal conspiracy?

    Instead of speculating that no one has read the Intelligent Investor, let us borrow some principles from Ben Graham. It seems overwhelmingly based on all the available evidence and after sound and rational observation and analysis that the Intelligent Investor could be a good book! Now in order to justify reading this book, I would need a margin of safety that the book offered value beyond the cost of reading it and the time to complete it. Well at $10 for a paperback copy and an estimated 3-4 day read I have to say I think those criteria have been met! The intelligent investor is a buy!
u/boogerdew · 6 pointsr/BipolarReddit

Just a few things that come to mind:

Self-Awareness> There are a lot of ways to work on this and most of them are worth trying. An effective goal might be to find some things that work for awhile, and prepare yourself to seek out other options when those don’t offer the same effectiveness. I’m pretty sure that when we dedicate the time to it, we provide ourselves with information that empowers us to make the decisions that bring about our idea of success.

Expectations> Most of us don’t want to fail. A lot of us feel like if we don’t meet the expectations that we’ve set for ourselves then we’re failures. This often causes some of us to avoid things that we feel we won’t “succeed” at. Hey, I’m not saying we shouldn’t set high goals for ourselves... but when we don't meet our expectations, maybe we could slowly get better at treating ourselves with the kind of love and encouragement that we would extend to our most loved of loved ones when they "fail."

Exercise> God damn it I hate exercise. I wore a button in fifth grade that said: I’m too out of shape to exercise. I’m thirty-nine now and I’ve still never had a consistent workout regimen. For a lot of us, this shit is probably harder than everything else we’ll consider in this thread. But there’s plenty of evidence to show that when the rest of our body is functioning at a more optimal level that we have more tools to work with, and that our tools are more effective. I hate exercise.

Group Discussion> Last year I attended an intensive outpatient group therapy program. This was my first experience with group therapy and I freaking love that shit. I learned that the gems to mine from this experience have very little to do with whoever is leading the group or which organization is providing the facility... as long as you feel like everyone is given the opportunity to share without reproach. Empathy is what it’s all about. The more courageous you are about sharing your struggles, the more empowered your fellow group members will be to do the same. When empathy is flowing freely most people are able to recognize some of their own cognitive distortions, AND help others find their own. Not every group is going to function well, but I think it’s well worth the effort to find on that does. You might start with looking into a DBSA group near you. My advice would be to look for one with 10-15 attendees. If you've got insurance that will cover it, you might check into an Intensive Outpatient Group Therapy program offered by a local hospital.

Books> These are just a few that have offered me some help—and a few that I just acquired but haven’t read yet.

Willpower: Rediscovering the Greatest Human Strength

Incognito: The Secret Lives of the Brain

Tribe of Mentors: Short Life Advice from the Best in the World

Feeling Good: The New Mood Therapy

Also, this is me patting you on the back lovingly and then turning it into a hug:

Did you feel it?

Disclaimer: I’m currently doing pretty poorly at all of these things.

u/UnluckyWriting · 2 pointsr/DecidingToBeBetter

Here you go:

The NUMBER ONE thing that helped my BPD tendencies was meditation, which I did as part of getting sober. It allowed me to find a pause between the emotion and my reaction. I still FEEL the same shit I used to - but I do not feel controlled by it any longer.

My favorite meditation teacher is Tara Brach. She posts all of her meditations online and on her podcast. Her book 'Radical Acceptance' was a life changer for me.

I also use a lot of binaural beats meditations (you can find these on Spotify or YouTube, I use the Profound Meditation Program by iAwake Technologies).

I have immensely enjoyed Sam Harris' book Waking Up which is about developing a spiritual practice without religion. He has an excellent podcast but it is expressly NOT about mental health, I just think he has a lot of great perspective to share.

Susan Elliot - Getting Past Your Breakup - this book looks like a cheesy self help book but it was awesome. Really really wonderful exercises. I also got her workbook.

Susan Anderson - Journey from Abandonment to Healing - this book was the first one I read, it was very helpful in understanding the science of what is happening in rejection and abandonment. This was useful because it allowed me to see my reactions were very, very normal.

Vicki Stark - Runaway Husbands - very specific book about men who walk out without warning. This helped me identify warning signs and feel less alone.

Lessons From The End of a Marriage - this blog is from Lisa Arends. Her story is hard to read. But this is the best divorce blog I've ever read! Such wonderful advice here.

Glennon Doyle Melton - First the Pain, then The Rising - I watched this every single day for a month. For a while, it was the only fucking thing that got me out of bed.

Overcomer podcast - hosted by a woman I met in one of the support groups, just lots of great insight on abandonment recovery.

Attached - great book on attachment theory

DBT Workbook - this is a GREAT resource on how to build distress tolerance and skills to face a lot of BPD type issues. DBT was a therapy style designed for BPD.

Edit to add: Forgot the best one!

Pema Chodron - When Things Fall Apart - Pema is a buddhist nun and I absolutely love her. She became buddhist when her husband left her. This book is incredible. So much wisdom! I always carry my Pocket Pema with me, literally Pema is THE BEST! She also has a lot of recorded talks that I find so calming to listen to.

u/terp4lifechris · 1 pointr/UMD

Seems like a couple of things going on here: one, how you are feeling, and two, how to make real friends. First, if you are willing to try reading a "self-help" book to feel better then I would recommend the book Feeling Good by David Burns. He basically identifies simple ways to get passed typical thoughts we all have that cause us to feel bad so we can start feeling better. It helped me a lot when I needed it and I've never really gone back to feeling bad the way I used to. I used to talk myself into feeling bad but now that I'm aware of how I was doing that, I know how to avoid it. If you are not into self-help books then just forget it.

Second, making "real" friends is more complicated because there is no checklist to know if someone fits in the real friend category. Each friend is unique and you kinda have to take them as they are. Think about this, everyone in the world is just trying to figure things out like everyone else. No one but God (you said you're religious) really knows what life is all about--even your parents. The saddest and loneliest person, and the person who seems to have it all together, each one is just doing their best to make it in this world. We are all the same in that way. Knowing that everyone struggles helps me realize that everyone needs "real" friends just as bad as I do.

That leads me to some actions that I take that help me make friends (some friends are closer than others). I try to treat people kindly knowing that they are struggling in the world too. Even people who are annoying or I don't really like that much. I know they have troubles too so I try to be nice, smile, hold the door for them, pick up something they dropped, whatever. When you're kind to other people that way, it can actually make you feel better about yourself as a human being--especially if you are NOT expecting to get anything in return. It doesn't mean these people are going to be your friend. But you would be surprised about one thing. Other people will notice that you are a kind person and most people want to be friends with kind people. Don't you? Also, when you are happy with yourself for being kind, it can actually make you feel better about yourself. People will notice that too, that you are happy with the kind person your are. After that, friendship depends on how much time you spend with each other talking, eating meals, playing games, whatever. If you don't spend time doing things together, it is not possible to become real friends. The more time you spend together doing things, the better friends you will be.

I'm glad you wrote this. Obviously you are not suffering alone. We are all just trying to make it in this world. It's nice that we can help each other out a little bit.

u/RankInsubordination · 3 pointsr/self

Hmm. Sounds like a lot of negative bias (...went and got better friends...How do you know?). Unless you suspect/know that as a friend, you haven't had any real practice at making, having and keeping a good friend or two. I've known people who had tons of friends, and were always going off to do something or other in some group or another. That wasn't and isn't me.

First things first, let's get rid of the negativity. This book was recommended to me by my therapist. I link it this way so you can read the reviews and an excerpt. It's been in print for over 20 years, so there's definitely something there. I have given several copies as gifts to friends and family.

I felt better (in a "Hey! I'm OK! And it's going to get better") -kind of way, after the first section (50 pages). If you can be honest with yourself, you can change the way the life looks.

Since it's been in print so long, it's almost definitely at your local library.

Oh, and the "being a better friend" part of everything? It will take some concentration, and maybe even some list-making, but, can you picture the person you admire most, because of the way they treat people?

That's the template for you. Write down everything that impresses/pleases/surprises you about that person.

There's your "personal improvement list". But I'll spot you one. If you want to become closer to someone you've met, ask if there are any "get around to it" projects you could help them with. Shared labor, donating time for a less-than-wonderful task just because you like the person, these are some of the things that cement a friendship. Go out of your way to help the people you really like, ask nothing in return, and come and go from their presence with a smile on your face. You will be thought of as a good person to be around just on those qualities alone. "Cast your bread upon the waters" is the way the Christian Bible puts it

Friendship is either stupid easy, or it requires some maintenance, like perennial plants. But as Vince Lombardi said, "Once you set a goal for yourself, the price you pay is immaterial".

If you believe you can be a better level of friend, you've got nothing to lose but your loneliness by trying to help yourself attain that goal by changing your worldview, vis-a-vis what it is that makes a "real" friend. If you ask 25 people what makes a good friend, I bet you get 18 different answers. Just find the right ones for you.

u/q_pop · 2 pointsr/UKPersonalFinance

Homework can be found in the "Recommended Reading" section of our FAQ. I've pasted it at the end of this comment for your convenience.

If there was one book most worth reading I would argue it's Smarter Investing by Tim Hale. It gives you all the basic grounding that you need to know in an easy-to-digest manner.

Another good source for information is, though the writers are very opinionated and not great fans of people in my profession.

You could potentially seek financial advice, and pay a fixed fee for some recommendations, or even pay Hargreaves Lansdown directly for advice (they offer telephone-based advice for a fee), but at your level of savings the costs may be disproportionally high.

Recommended Reading

Books about investing

Intelligent Investor - Benjamin Graham

This book was written by the father of "value investing", and the mentor of Warren Buffett, who is widely accepted to be the world's most successful investor.

It was originally published in 1948, but Ben Graham updated it periodically over the years, and it stands as true today as it ever has.

Beating the Street - Peter Lynch

Published in 1994, this is arguably showing its age more than Intelligent Investor. Either way, valuable reading from one of the best managers of money in the past few decades.

Naked Trader - Robbie Burns

Subtitled "How anyone can make money trading shares", this is an entertaining, tongue-in-cheek account of one financial journalist's attempt to quit his job and make £1,000,000 using a short-to-medium term trading strategy. Not very scientific, but an interesting counterpoint to the previous recommendations.

Smarter Investing - Tim Hale

The ultimate counterpoint to attempting to "beat the markets" - after spending 15 years working in active fund manager, Tim Hale concluded that the best outcomes for most investors in most situations would be a simple portfolio of "passive" investments (that is, funds which attempt to track a market, rather than outperform it). This style is favoured by the likes of Monevator, and many of the subscribers here.

Berkshire Hathaway's annual shareholder letters - Warren Buffett

Not a book, but a series of essays over the years from the world's most successful investor. Makes interesting reading! Notably, the 2014 letter (not published in the above link but published here in abridged form) implies that he now feels most investors would be best served by low-cost trackers.

The Financial Times guide to investing - Glen Arnold

A great starter guide, going from the very basics (why businesses need shareholders) to more in-depth explanations of different types of investment, and step-by-step guides on how to execute trades.

u/philintheblanks · 6 pointsr/learnpython

That's an interesting pattern you have going on there. I don't know what kind of background you're coming from, but one of the nice things about Python is that, being dynamically typed, you can pass almost anything to a function at run-time.

What that means is, you can have a function like a spell that expects a character object, whether it's p1 or p2 is irrelevant. It holds the logic of how to access the object and alter the attributes. There's a LOT that goes into how you design that, but that's a thing that literal books have been written about.

So, as a brief example, you might do something like this:

def fire_spell(target):
target.spell_hits('fire', damage=2)
return target

class Character:
def init(self, name, health=10, mana=10, immunity=None): = name
self._health = health
self._mana = mana
self._spells = {
'fire': fire_spell

def health(self):
return self._health

def mana(self):
return self._mana

def cast_spell(name, target):
return self

def spellhits(self, type, damage=1):
if self.immunity == type:
return None
else: -= damage
return None

So let's break that down a bit:

fire_spell: Exists outside of the characters. I would probably put all my spells in a separate module, that way I can import them, and add and remove them at run-time from the characters. That enables you to do things like have spells that aren't accessible prior to a level up, or some other mechanic. This isn't too different from having a separate class for the moves, since you're trying to namespace the moves, but I'll get to where that's a little odd here in a second.

self._health: This is just an attribute, but note the leading underscore. This is a pythonic convention that tells anyone who is using your code not to use this variable to access the thing that it points to. That is it would be best to leave it private. Python doesn't have private variables, so this is as good as it gets. We're all adults here.

@property: This is an example of a built-in decorator. If you don't know what decorators are, there are TONS of tutorials out there. Essentially, they modify how a function works. This one makes it so that instead of having to call the function, e.g., you simply access it as an attribute a la Why on earth would you want to do this though? Well, any code in the function will run prior to returning the attribute! This allows you to modify what the calling code receives when it accesses the attribute. You want to have a conditional health buff based on the zone that the character is? Boom, way easier with this pattern. What to have the mana get dropped to 0 because of a status effect, easy peasy. And as soon as the effect clears, it can go right back to where it was! Basically, @property is really cool.

spell_hits: This is a method on the Character object. This you know. But why is it there? Well, designing a game is essentially designing an API. You may have heard of API around town, usually people are talking about web APIs, but the term is Application Program Interface. It applies equally to what this is. The Character class exposes an API to function inside of your program. They can expect that if they're going to receive a Character then they can act on it in a certain way. This is actually where you start to understand why certain programmers really aren't fans of dynamic typing. Python gives precisely 0 shits what you pass to this function. You can pass it a list of integers and it will not be annoyed. Well, until you try to call spell_hits. Then you get PropertyError: list object has no method 'spell_hits'. This won't happen until runtime. Then you're stuck chasing down which part of your gaht DANG CODE PASSED IN A DAMNED LIST!!!!! This probably won't happen to you with a small program, but I like to add context!

return self: Why would you do that? Well, we're back to the concept of API design! It's a pattern used for a "fluent interface". This pattern allows you to utilize method chaining, which is a really nifty thing. For example, let's assume that you want to run specific series of methods on a certain user input, then you could do p1.cast_spell(p2).use_item(p1).another_method(). This is a pattern that you see in a lot of libraries. It helps wrap your head around it if you write some code yourself that does it.

As far as your code is concerned, there's on thing that really sticks out:


You don't need to explicitly call __init__. The __init__ function is what a lot of pythonistas refer to as a "dunder method", short for "double-underscore". I prefer to call them "data-model methods", since that tells you what they're actually a part of, instead of describing how they're written (which is totally useless information). A bit pedantic? Totally, but I wouldn't be a programmer if I didn't have a pedantic pet peeve (how's that alliteration!)

Data model methods are called when they need to be, and in the case of __init__ that is when you initialize an object. Example:

class Thing:
def init(self, name): = name

t = Thing('bobby brown')

That will output 'bobby brown' because we assign the newly initialized Thing object to the variable t. Without capturing the object with a reference to a variable, they will be garbage collected. Basically, the Attributes and Moves objects that you're initializing will not be attached in any way to the player. You would need to do something like

self.attributes = Attributes(self)

Which would allow you to reference the new objects inside your player. Garbage collection in python isn't something that you'll need to be concerned about often, but I mention it because it's nice to know that python uses reference counting. Well, C Python does, and you're probably using that, so....

Overall, I think that what you need to get coded (pun intended) into your brain is the idea of frist class-ness, specifically as it relates to python. This concept is what makes decorators possible, and underlies the design patterns related to classes. I would also highly recommend the official tutorial as a place to find solid info on basics.

Past that, really it comes down to design choices. There's a million other ways than the one that I gave you to do this. Each one has a good reason to do it, and each one has trade-offs. This is where the rubber meets the road! Real programming boys! If you're interested in reading something that might help, I recommend Clean Code as a good read on designing good reusable software. The design book I linked above is kind of dense and uses Java, which could be confusing if you don't have experience with it. Clean Code is more generalized.

TL;DR: Functions accept objects, so pass the player object to the function and alter the health there. Then go read a LOT of stuff on OOP design patterns, cause they're hella hard.

u/Sunergy · 6 pointsr/learnart

This seems like the perfect place to get started, and having the kind of confidence that it takes to be able to ask for help when you need it is exactly the kind of thing you need to be successful with drawing. I've been on my own drawing journey for about six months now, from a starting place quite similar to where you were, and although I still have a long way to go I'll do my best to share what I've been able to find out along the way.

Drawing is much like learning any other skill, like math or a sport, and as such the best favour you can do yourself is to know how you learn things best and to focus on that. Always try to go for several different methods, since variety will help your learning process from getting monotonous, and remember that any type of instruction will be better than no instruction, even if it's not your first choice.

Also, drawing on a tablet is hard. The disconnect between pen and screen as well as the small surface and lack of completely accurate touch feedback can make it a difficult way to begin making art. It's fun and you should certainly keep it up, but I found it was much easier to learn the basics with a good old pencil and a cheap sketchbook, and then apply what I learn to my tablet paintings afterwards. Sketchbooks also have the great benefit of being portable, and going around and drawing things that you can actually see in front of you is essential to learning to draw well.

Books did wonders to help me. Check you local library to see if you can find some on the cheap. Try to avoid books that only deal with drawing on specific thing, like "How to draw cars" and such, since these are often far to specific and narrow in scope, when what you really need is a solid drawing foundation. Probably the highest recommended one for beginners is Drawing on the Right Side of the Brain by Betty Edwards. It covers all the basics and is geared to the complete beginner, and unlike a lot of art books that focus primarily on techniques it also talks a lot about the thought process behind drawings. Judging by your work, I think it would be the most help to you of anything, as your major problem seems to be that you are relying on "symbols" that represent what you are wanting to draw rather than direct observation, which is extremely common and was my major problem too. You can also find videos of her teaching the lessons from her book on Youtube, but I'd still recommend the book, as it allows you a better view of the examples, lets you double check the instructions and makes it so you can work at your own pace.

Taking a class can be invaluable, since you have someone with experience right there to put you on the right track. Many colleges and community centers offer art programs in evenings or weekends (and during summer break, since you seem to be a student) where you could get started. Asking at a local art supply store might help to put you on the right track there. My work schedule prevents me from taking classes on any regular basis, but I'm always on the lookout for short intensive and drop-in meetups that do fit in.

For web based ressources that deal specifically with digital painting, nothing beats Ctrl+Paint. You don't need to bother with the videos that require you to pay for now, there is a great deal of free tutorials that will help you get started.

After you learn the basics, it all comes down to practice and choosing what you want to focus on at any given time. More advanced books and classes can focus on different mediums or subjects, and the fun part is often exploring and experimenting on your own. The trick is to think big, avoid restraining yourself, laugh off every mistake and try again and practice, practice, practice.

u/exodeos · 2 pointsr/vancouver

Sorry to hear about your situation. I'm not sure on the focus of Infomatics, but by the sounds of your post you are well equipped and looking for a programming (web dev) job. So I'll focus on the job part because realistically it's the only thing I feel I have any (possibly) useful advice for. I'm sorry to hear you haven't found a job yet. But you are quite fortunately (unless I mis-read what you want) looking in one of the most in demand, albeit competitive industries around.

So here is my (hopefully semi-useful) advice. Most are things that I was told to do when interviewing that I thought helped me quite a bit. I hope they help you too. You may be doing all of this already so I am sorry if it is obvious things you've been doing.

I strongly recommend buying this book if you can. Read it cover to cover and do as many of the exercises as you can.

Next I recommend applying to any and all tech companies you can find, it doesn't matter if they are asking for a specific framework or language or more experience than you have. A lot of people are put off by the 2 to 3 years in x that most postings have. Usually they just care that you have some experience and seem smart enough to learn. The fact that you have side projects is a giant plus for you, they love seeing that.

These sites are great ways to practice for interview questions:

Doing these questions really help with interview questions in my opinion.

From there just cycle, continue to read the book, apply to as many places as you can, do practice problems. Work on your own side projects, the experience gained from them is extremely important.

If you have any public repos on github clean them up. If you do not, register for an account and put your personal projects on some (if you can). That way you can start to include the account on your CV. (If you aren't already)

Practice explaining your projects (what you did and why) and try to think of the questions they could ask you.

In terms of financials/housing/immediate work, I would look at moving out of the downtown core and try to find a basement suite or something affordable. Maybe try to get a roommate. I would try to find a job (starbucks, best buy, london drugs, etc) to support yourself in the short term. If you have a friend that might be willing to let you stay with them while you find a place talk to them now, and let them know the situation. That will help them prepare for you if you can't find a job/place.

Also, don't be afraid to post your resume to subreddits that focus on that sort of thing (remove all personal info!) or feel free to pm me yours and I will be more than happy to try to provide some constructive criticism.

Sorry for the book, I hope at least some of it was useful to you.
Also sorry for the grammar/spelling/shitty writing style I am a programmer, but not a good writer.

u/MMM360 · 1 pointr/Fitness


Congrats. You've made an amazing first step in the right direction. Change is a road, and the only thing that matters is that you keep making progress toward your goal destination, no matter how small.

People in this thread have given you great advice on what changes to make, and I'm sure this has gotten you thinking about the idea of making choices. All of this will be helpful as you start identifying the ways you want to improve your lifestyle.

I'm a behavior designer: I design programs and services that help people change behavior, and what I'd like to offer is something slightly different. I think one of your biggest priorities should be how you think about change. Or rather, if choices and changes are the "what", what I want to talk to you about is the "how". Change is hard, and you're going to need an army of "how" on your side.

Willpower (aka, the ability to choose the "what" in the moment) is a fickle thing, it tends to dwindle as we move through our day, making it extremely easy to fall back into old habits. The good news is that there are ways we hack our tendency to self-sabotage. Here are some things you can do to tackle the "how", to make sure the changes you're trying to make ultimately stick and succeed.

  1. SMALL > BIG : As you start to make changes to your lifestyle, you should be looking for things that are small enough that you can do them consistently. They should find a place in your daily routine where they can thrive. Unfortunately, our natural tendency as humans is to take on changes that are big and ultimately unsustainable. Let's use exercise as an example. When we're trying to change, we have a tendency to create an aggressive exercise program that matches our motivation at the moment (like trying to do a 2 hour gym routine). But we burn out: a two hour gym routine isn't sustainable when we're sick, tired, or just not feeling it. Truthfully, the changes that make the greatest impact are the small ones that happen consistently over time. The changes we can sustain, even on or worst days. Keeping with the exercise example, my recommendation is to do something simple, like going for a 30 minute walk, every day before breakfast. Designing and playing the long game is true discipline. Your daily behaviors are the glacier that create the grand canyon of your life! Take them seriously!

  2. HOW > WHAT: After you identify changes you want to make, the next question you should ask yourself is "how am I going to make that happen". You want to drink less soda? Make a plan. Stock the shelves with tea and sparking water, carry a water bottle with you to resist temptation, etc... Plans help us by using foresight to make our goals EASIER to pursue in future situations.

  3. REDESIGN YOUR HABITAT to REDESIGN YOUR LIFE: The things we have around us serve as visual triggers for certain behaviors. Having our work out on our desk reminds us we need to get it done, having our running shoes by the door reminds us to go for a walk, having a bowl of candy out triggers a sugar craving, etc... Think about adding more positive triggers and eliminating negative ones. One of your goals should be to have an environment that illustrates your best self, and helps you accomplish your goals.

  4. SUCCESS REQUIRES SUPPORT: Weight watchers built a company around this idea. While you don't need to pay your way through a group weight loss program, you should be thinking about friends and family who can help you accomplish your goals. There are two parts to this: one is having someone who can keep you accountable, like doing a weekly weigh-in with a family member. This helps you stay committed on days when you're not feeling like doing the work. Second is having someone who shares a goal with you. If you can find a friend who's also interested in getting active and making healthier choices, it can be a powerful way to stay motivated and on track. No one should have to go it alone, and most people have health-goals they don't readily talk about. Keep your eyes peeled for people around you who can fill a "coach" and "teammate" role in your journey to change.

  5. LEARN FROM YOUR BAD DAYS: Let's get real for a moment. You're going to have bad days. You may even have bad weeks. I bet you'll have a bad month. I sure have. The biggest gift we can offer ourselves is to learn from these mistakes, because they will happen. Spent a weekend in the basement playing video games eating junk food? Take it apart. How were you feeling? Were you tired? Depressed? Frustrated? Ask yourself hat triggered that behavior. Would there have been a more productive way to self-soothe as a response? Was there a point where someone or something could've intervened? Was there a less damaging version of that event that could've taken place (say eating healthy snacks but still being a basement vampire)? The best thing we can do when this happens is to forgive ourselves, and pay it forward: developing a plan to make our future selves more successful when that situation presents itself again.

    If you get into this idea, there's a ton of great resources out there to help you learn more about the "how. Try BJ Fogg's Tiny Habits, read "Willpower" and "The Power of Habit". Take a look at The Gospel of /u/Ryans01 - a reddit post on change that's better than what I read from most behavioral scientists out there.

    Finally, remember to stay positive, and know there's an army out here who's proud of you and ready to help in whatever way we can!
u/Etarip · 2 pointsr/swoleacceptance

/r/fitness: newbie program picker -> Fat Loss -> More than 10kg/25lbs:

Use a calculator such as this one to get an estimation of how many calories you should be consuming daily. Increase the amount of vegetables you consume (potatoes don't count :) ) because fiber helps in giving a feeling of fullness. Increasing your protein intake (via either consuming more meat or simply drinking whey protein shakes ) will both boost muscle gain and provide a longer-lasting feeling of fullness than carbs will.

Take weekly photographs of yourself, preferably in underwear/shorts so that you can see your belly, thighs and arms. If you're gaining muscle while losing fat, the weight on the scale may change less than you expect, but the mirror doesn't lie. Recording everything you eat will also make you more conscious about your intake and definitely helps in weight loss.

The thing that's really going to make or break your success is how well you focus and stick to your diet. Many people have successfully lost large amounts of fat by switching to a low carb diet. Keep in mind that this may not be the most suitable diet for everyone, but by far the majority of the population should see positive results.

For best results, you should combine this program with some form of exercise. The best form of exercise is the one that you enjoy doing. Whether it's weightlifting, running, swimming, mountain climbing, football, or throwing a frisbee around with friends, anything that gets your heart rate up for an hour or two will be beneficial.

Keep in mind that sustaining a caloric deficit can lead to loss of muscle mass as well, which is usually a Bad Thing. To avoid this, it is usually recommended to do some form of strength training atleast 2-3 times per week. Check out the muscle gain section of the Program Picker for more info regarding strength training programs.

Remember, the exercise will help, but the factor that will decide your fat loss is your diet. If you feel you're too heavy to do bodyweight exercises or anything inside a gym without hurting your joints, you can just go for a pleasant 30-45 minute walk daily while strictly controlling your diet, and you'll have to buy a new, smaller set of clothes soon. Once you reach a weight where you feel comfortable about doing some more strenuous exercise, check out the program picker again.

tl;dr: Eat vegies and protein at a caloric deficit. Take progress pics. Do a form of cardio you enjoy. Lift to maintain muscle, buy the Starting Strength book and get lifting. Become Swole.

u/rebelrob0t · 3 pointsr/REDDITORSINRECOVERY

I went to one AA meeting when I first got clean and never went back. I understand people have found support and success in it but to me, personally, I felt it only increased the stigma of drug addicts as these broken hopeless people barely hanging on by a thread. It's an outdated system that relies on little science or attempting to progress the participants and relies more on holding people in place and focusing on the past. Instead I just worked towards becoming a normal person. Here are some of the resources I used:

r/Fitness - Getting Started: Exercise is probably the #1 thing that will aid you in recovering. It can help your brain learn to produce normal quantities of dopamine again as well as improve your heath, mood, well being and confidence.

Meetup: You can use this site to find people in your area with similar interests. I found a hiking group and a D&D group on here which I still regularly join.

Craigslist: Same as above - look for groups, activities, volunteer work, whatever.


This will be the other major player in your recovery. Understanding your diet will allow you to improve your health,mood, energy, and help recover whatever damage the drugs may have done to your body.

How Not To Die Cookbook

Life Changing Foods

The Plant Paradox

Power Foods For The Brain

Mental Health

Understand whats going on inside your head and how to deal with it is also an important step to not only recovery but enjoying life as a whole.

Feeling Good: The New Mood Therapy

The Emotional Life Of Your Brain

Furiously Happy

The Science of Enlightenment: How Meditation Works


If you are like me you probably felt like a dumbass when you first got clean. I think retraining your brain on learning, relearning things you may have forgot after long term drug use, and just learning new things in general will all help you in recovery. Knowledge is power and the more you learn the more confident in yourself and future learning tasks you become.

Illegal Drugs: A Complete Guide to their History, Chemistry, Use, and Abuse

Why Nations Fails

Ideas: A History of Thought and Invention, from Fire to Freud

The Modern Mind: An Intellectual History of the 20th Century

Thinking, Fast and Slow

The Financial Peace Planner: A Step-by-Step Guide to Restoring Your Family's Financial Health

Continued Education / Skills Development

EdX: Take tons of free college courses.

Udemy: Tons of onine courses ranging from writing to marketing to design, all kinds of stuff.

Cybrary: Teach yourself everything from IT to Network Security skills

Khan Academy: Refresh on pretty much anything from highschool/early college.

There are many more resources available these are just ones I myself have used over the past couple years of fixing my life. Remember you don't have to let your past be a monkey on your back throughout the future. There are plenty of resources available now-a-days to take matters into your own hands.

*Disclaimer: I am not here to argue about anyone's personal feelings on AA**

u/EboKnight · 2 pointsr/gamedev

I'm not sure what your background is, but if you haven't had any formal programming education, I believe we learned out of a book like this:

One of the keys to good software is good design. Making a plan of action before you even start coding cuts back on the 'quick fix' solutions that make your code harder to work with later.

I don't think this is C# specific, but design is really something that is abstract from language specifics. If you're looking for something specific to the environment you're working in, I think material on best practice for the game engine you're using would be better. I have done application development with C# and C# scripts in Unity, and there are definitely differences in how I am able to make things interact, which impacts how I design my code.

I have two recommendations if you're wanting to expand your abilities in design:

  1. UML Diagrams: You can model out all of the pieces, with their members, functions and interactions with each other. Doing this can help in prototyping a system, you can see the interactions and logically create classes and scripts around the model instead of bloating things as you run into problems along the way.

  2. Documentation: This is key to the longevity of a project and saving time in bugfixes and expanding on software later. When you finish any snippet, leave comments explaining what you're doing. Use good variable names. I do consultant work on legacy code and it's amazing how people can write an entire application without comments, in one large Main file and with variable names that mean nothing. I was terrible about naming things 'temp' and what not when I first started out, and if you ever work with anyone else leave a project to sit for a few months to a few years, you and your colleagues will greatly appreciate documentation.

    As far as the book goes, I can't condone it, but there's probably PDFs out there. Sometimes it helps motivate to actually read through it if you've invested some money into it, though. I would recommend finding an old/used copy. An old version of the book should work just as well as an 'updated' version.

    You may also find it useful to look into Agile/Scrum. It's all about documenting your development, and helps to organize what's been done and what needs to be done, as well as give you an idea of how long things take, which helps later with estimations. All these things are skills that will come in handy later, if you decide to pursue software as a career. Plus, it's all good habits that help facilitate good, clean code.
u/stevensydan · 3 pointsr/DMAcademy

I just ran my first session as a new DM with LMoP last week! I'll jot down my experience running a group of 4 beginners. (so take my advice with a grain of salt as a beginner that has not finished the campaign)

First, read through the books in the Starter Set! (If you can afford the Player's Handbook, that is a good idea as well.) I highly recommend going through the rulebook (or Basic Rules) then at least skimming through the entire LMoP module. You don't have to memorize everything but as a DM it is important to have the idea of the setting in your head.

For combat, you have to decide if you are going to run "Theater of the Mind" or battlemat+miniatures for combat. Theater of the Mind is more flexible and requires less preparation but battlemats give great visuals at a cost of preparation and supply.

Then you have to decide if you think your players would want to make their own characters or not. For my beginner group, I decided that they would be a lot more invested/excited if they could identify with their own creation so I chose to not use the pre-generated character sheets. Once you are comfortable with the rules of D&D enough, set a date to meet with your group.

Since we had to make characters, I held a Session 0 to introduce the basic concept of what to expect in committing to D&D as well as character creation. I highly suggest making characters together a separate day before Session 1 because it usually takes a decent amount of time for the first time (3ish hours for me).

My Session 0 looked like this:

  • Introduction to D&D

  • Explaining all races, classes, backgrounds and letting them pick

  • Giving character sheets, rolling stats

  • Guiding them through the char sheet by referencing DNDBeyond for background/race/class bonuses

    After everyone was done, I let them take home the character sheet and work on character appearance, personality, and background story.

    The week after, we had Session 1. Make sure you actually read through the LMoP module in depth, at least up to Part 1-2 beforehand. I also decided to take some elements of this supplement Part 0 for LMoP to use as a tutorial for my players. Then, begin your adventure! My party took a lot longer than I expected and only got to the entrance of the Cragmaw Hideout after 3 hours.

    Good luck to your campaign, I'm looking forward to my second session!


    Some recommended guides I used:

  • Matt Mercer tips (all DM's love this man)

  • Don't Stop Thinking guides (great graphic visuals and in-depth coverage)

  • Matt Colville tips (gives a good idea of how D&D should look like at an advanced level)

  • DungeonDudes (channel that covers good topics)

  • DNDBeyond (amazing website for the Basic Rules, classes, and races)

  • OneCritWonder LMoP tips (helpful overview of the module)

  • LMoP enemies (generator that adapts to how many players you have)

    Supplies I personally prepared (BUT ARE OPTIONAL):

  • Beginner dice (shared with my beginners, they are planning to get their own sets soon)

  • Custom character sheets (a bit overwhelming at first but I find helpful for each class)

  • Spell cards (I don't think many people use these but I find it an amazing resource to give your players if they are spellcasters)

  • Battlemat (use with Wet-Erase markers)

  • Paper minis (dedication and time required, can use coins, legos, or anything instead or even real miniatures if you can afford it)

  • DM Screen (the official and most standard and affordable screen)
u/Awesomeautism · 6 pointsr/stocks

This is what I tell all beginning investors, also being told this myself as a beginner, but before you find any sort of apps to trade on or taking stock recommendations, you need to figure out what kind of investor you are and develop an investing technique that fits you. What kinds of stock you invest in are mainly determined by how long you want to wait before selling the stock and how urgently you need the money.

Most investors are typically classified as either Defensive or Speculative. Defensive investors are ones who buy stocks in companies that have a long history of slow growth, and are not likely to make big gains quick. These kinds or stocks are the kinds people would invest in for their retirement or educational plans and are either classified as Defensive stocks (slow steady growth) or Income Stocks (stocks that pay out high dividends above the national inflation rate).Stocks like these would belong to companies that sell products that are classified as Essentials such as food, water, or energy.

Speculative investors invest in stocks that they believe are going to grow quick, and are willing to take on major risk in order to potentially see those large gains. These kinds of stocks are classified as Speculative (high growth and risk), Growth Stock (small or start up companies with high risk), or Cyclical (performance fluctuates with the economy in major losses or gains). These kinds of stocks would belong to companies that sell luxury products that may not sell well if demand is not high enough.

What you need to know is what kind of investor you are, and what kinds of returns you want, and how quickly you want them. Once you know that, you can find the right stocks for you. But now is the best time for people like you to be learning about investing, gaining experience, and investing in companies.

Once you know how quickly you want returns, and how much risk you want to take, you can begin to develop an investing technique that suits your comfort zone. This will ensure that you don't get ahead of yourself, and lose all your money in blind foolishness.

If you want an app to practice investing before you do the real thing, has a great simulator that lets you invest fake money and get accurate feedback of the market. The website also has a wealth of information about every subject you could learn about in regards to the stock market and trading.

Yahoo Finance is one of the best websites I've found for easily accessing the data you need on each stock and getting the best feedback of the current state of the market. You can also easily find stocks with the Yahoo Stock Screener.

If you want a book recomendation, The Intelligent Investor is considered an essential read for anyone who wants to have success, large or small, within the trading market. Warren Buffet, the most successful stock trader in history, said that it is "By far the best book on investing ever written." Here's the amazon page to buy it.

u/Gary_Oldman_AMA · 4 pointsr/Fitness

Wow, you have done a fantastic job so far! Your progress is really inspiring and you have accomplished something that a lot of people never manage to do. Congrats and keep up the great work.

When you first begin strength training, you may be able to build a little muscle while you continue to cut (although it will taper and eventually stall as you continue to lose weight). You should also be able to gain a good amount of strength just by virtue of practicing big lifts, learning to use your body's leverages to your advantage, improved neural efficiency, etc. Getting stronger isn't just about getting big muscles: it's a skill.

My recommendation would be to try something like SS, SL, or Greyskull LP. Regardless of what you do, I also highly recommend going online and actually BUYING SS: A lot of people just use the Wiki but, honestly, the Starting Strength book is a really easy to read and information-dense introduction to barbell training and it will explain most of what you need to know for your first several months of training and beyond (it covers technique, basic beginner programming/how strength adaptations work, accessories/how to use them and incorporate them into a routine, and much more). Also, if you do Greyskull, there is also a book for that program as well:

Whatever you do, I cannot stress enough: GET THE BOOKS AND READ THEM. Knowledge is power and it will make you a lot more confident about what you are doing when you have something to reference. Reading Starting Strength was one of the most important early steps I ever took to jump start my strength training. I can't stress enough how helpful it was to getting me stronger and staying relatively injury free.

Good luck!

u/MDFrostbite · 5 pointsr/CasualConversation

from /u/i_Got_Rocks

>Your value system says, "If this girl likes me, I like me."

>Your value system should say, "I like me, no matter what happens to me. Because some things can't be helped, and you can't control other people. If other people don't like me, it's okay, I will find people that DO like me. Everyone is free to do what they want, but this girl that I'm interested in, can do what she wants. If she doesn't want me, it's okay, I'll go on to the next one."

>There's something going on inside you that is waiting for the world to approve of you. Don't feed that false concept. The world will fail you at some time, and you will break (as you're doing at the moment). And the world will never approve you enough--ever.

>Instead, consider a new concept. Start a new habit.

>Say to yourself, "I am not OUTCOME dependent. I am process dependent." Meaning, you don't rely on the OUTCOME of situations to feel happy or sad--that's reactionary. Be proactive. Rely on yourself and only yourself for your emotions. Right now, your emotions are dependent on that girl--and sooner or later, it will be another chick, and another, and you will always be sad or unfulfilled because you can't control others. Depend on yourself to have fun, to feel good, as much as possible at any given situation.

>It's hard to change. It's hard to be a new person that takes responsibility of their emotions. It's hard to be proactive. But hey, being reactive to the world, depending on people to always make you feel happy is exhausting too--and as you can see, it's not a solution to fixing the most important thing in this talk: you.
You're not exactly broken, what's broken is the way you relate and think about yourself. Pretend you are your own best friend. How would you treat your best friend? Would you beat them down all the time? Would you say, "hey, if that chick rejects you, you're not shit."


>Would you say, "Dude, she's just one chick. And truth, you don't know what she thinks about everything. She might have some hidden thoughts that would turn you off forever--maybe she thinks that Jews really are the source of the world's problems, you don't know. Maybe she picks her toes daily and doesn't wash her hands after. Bro, just let her go, and go on about your life. Believe me, if you work on yourself and focus on being better, it gets better."

>I know which best friend I like better.
Be your own best friend, always. That's the real issue here. Take care of yourself, I cannot state that enough. Good luck, bro.

>Edit: Thank for the gold, whomever it was. I wasn't looking for karma or gold, just trying to pass some of what has helped me. I would also like to link the following, as they were HUGE helps to me in changing my life and way of thinking.

>Link 1: Check out the top comment on this post (the comment is not mine):

>Link 2: This little book helped me go inside myself and deal with my demons--very important don't skip through the book, just follow the simple instructions as if it were a manual--I know, that seems stupid, but trust me on this one:

>Some other suggestions: Listen to Eric Thomas, this is what got me started--You have to want it, really, really want it:

>I also suggest "The Power of Habit":

>I'll give you the important thing about it, in case you can't buy it: Almost everything you do is tied to a habit and you're not aware of it. Even our thoughts. He breaks down all the scientific data on how individuals and entire societies form habits and change them.
Every habit has a cue/trigger, a process, and a reward.


>Cue: Someone rejects me. Process: I feel bad, my thoughts keep spinning on why can't they like me... Reward: I feel like shit.
However, if you don't press the cue/trigger--you're way less likely to play the habit out. So, if I'm tired of feeling like crap, I stop asking girls out. But then, a new habit develops--

>Cue: I avoid social situations. Process: I feel bad for being "weird" in social situations. Reward: Social anxiety.
All you did was replace an unproductive habit with an unproductive habit.
As you can see, not all rewards are positive--that's why it's important to change our cues, process, and rewards from habits. Recognize your habits, and you'll have more power to change them. Replace unproductive habits with ones that help you grow. If you interrupt your triggers, you change the habit easily--usually, if you're past the trigger, your habit will take over, without you even thinking about it. This goes for our thought habits as well.

>Good luck to everyone. I leave you with this, "Pain is temporary, it may last for a moment, a month, or even a year. But if you get through that pain, at the end of that pain is a reward." Think about it like this, would you rather:
A. Hurt, keep doing the same thing, keep hurting from the misery you keep getting.
B. Hurt because you're changing into something better. Hurt on the journey to being stronger one year from now?
It'll be hard, very hard. Some people will not believe in you, but you'll be better if you stick with it.
You'll hurt either way, why not get something out of your pain? That's the choice I made. And every human being has that power. I've only been doing this for a few months--but dealing with me has changed everything around me.

u/Midnightapalooza · 2 pointsr/videos

No problem! Sorry to hear you’re in that situation right now, but I respect that you do want to put in some work of your own to get better.

DBT was more or less designed to help treat BPD, so it’s probably the right recommendation.

Regarding resources, well, I’ll say that it kind of depends on what you’re looking for. Clinically speaking, there’s some solid research on DBT, including for BPD. It’s been shown to help with depression, anxiety, and PTSD. So if you want to learn more about its efficacy, I’m more than happy to shoot some more studies over to you.

If you want to learn more about the practice of DBT itself, that Wikipedia article I linked up above is useful to begin with. It sort of shows you what the therapist would do, the order in which they would apply the ideas of DBT, and what those principles are meant to do. I’d start there, if I were you. If you want to know more about any specific portion of it, I’m more than happy to help you find those resources you’re looking for, but DBT and mindfulness and such are extremely broad topics.

I will link you two resources for sure though.

First, I must admit I have no experience whatsoever with this book or this method. I don’t know how useful it is, but, I also wasn’t in your position where I had to wait to start seeing a therapist. I’ve been made aware that there are workbooks for DBT, and this might help you to start developing and refining the skills you’d learn with a therapist. Again, I do not know if this works or even what’s in it, so I really don’t feel great about recommending this to you, but I figure you might want to be made aware of it too. I kind of hate the idea of people selling these skills for profit, and I hate self-help books so the whole thing makes me feel really scummy. But if this book or any others look like they might be helpful to you, then check them out. See if you can find them for free anywhere first though.

Second, something I can feel far better about recommending to you. Guided fucking meditation. I’ve fallen out of love with Sam Harris because of some of his personality traits and political leanings, but, he’s got some amazing insight on mindfulness and meditation that really helped me personally. When I first started learning about these ideas from him, it helped me more than most everything else I’ve ever learned or tried. This is a good video of him talking about anxiety and meditation. I could probably link a dozen of his talks or articles but again, I’m not a big fan of the guy anymore. But those ideas are great and extremely useful.

I could link and talk about this stuff all day, so really few free to ask questions or ask for more links.

u/jrodtothemax · 4 pointsr/GraphicDesign

Are you a reader? Check out Drawing on the Right Side of the Brain. I know it may seem silly, reading a book about drawing, but the approach they take is that really a "lack of drawing skill" is an issue with perception. Something else you can work through are the Loomis books. There are .pdfs of them to be found here. I've just been reading and plugging away at the examples in the books, picking up tips and tricks along the way.

SUBREDDITS: Even if it's just to see someone else's work and be inspired, pick up techniques. /r/drawing is great to see a lot of pencil stuff. Also, they have a whole sidebar of resources. /r/redditgetsdrawn may be one of the best modded and fun subreddits there are. You get to see so many different styles, and now they just launched /r/watchredditgetsdrawn for time-lapse videos of some process. Most of these are digital paintings, but you still pick up tips and tricks. But on RGB, all skill levels are welcome, there is no down vote button, and people are very positive and willing to critique. Plus, you get a some interesting things to attempt to draw, generally people, but some of the submissions are fun. I actually created an "art" multi reddit that contains:/r/doodles, /r/drawing, /r/drawings, /r/Illustration, /r/learnart, /r/redditgetsdrawn, /r/SketchDaily, /r/Sketching, /r/watchredditgetsdrawn. Don't be afraid to put your stuff out there. Eyes on something with tips and helpful critique will go a long way.

And lastly, break yourself of this notion that drawing is a magical skill or talent that some people possess and others don't. Very few people are able to free draw something straight from memory, and if they do, they likely practiced that form many times before they could do it. Practice, practice, practice and have fun. Don't be afraid to use trace paper to fix a first version, don't be afraid to experiment. Watch any drawing video you can and look at as many drawings as you can.

I recently started about a month ago of wanting to learn how to draw and have found the above super helpful. The amount of improvement I've seen in just a few weeks from a lot of the above is so encouraging. My trade is motion design, and I can't wait to see how learning a new technique or skill will shape the way my work comes out. Don't get discouraged, it will feel hard at times, and it will feel like work. Make a habit of sketching or drawing something daily, even if it's just an artists mannequin. With pencil, realize almost as much erasing goes into a drawing as lead does.

Enjoy the journey.

u/coned88 · 1 pointr/linux

While being a self taught sys admin is great, learning the internals of how things work can really extend your knowledge beyond what you may have considered possible. This starts to get more into the CS portion of things, but who cares. It's still great stuff to know, and if you know this you will really be set apart. Im not sure if it will help you directly as a sys admin, but may quench your thirst. Im both a programmer and unix admin, so I tend to like both. I own or have owned most of these and enjoy them greatly. You may also consider renting them or just downloading them. I can say that knowing how thing operate internally is great, it fills in a lot of holes.

OS Internals

While you obviously are successful at the running and maintaining of unix like systems. How much do you know about their internal functions? While reading source code is the best method, some great books will save you many hours of time and will be a bit more enjoyable. These books are Amazing
The Design and Implementation of the FreeBSD Operating System

Linux Kernel Development
Advanced Programming in the UNIX Environment


Learning the actual function of networking at the code level is really interesting. Theres a whole other world below implementation. You likely know a lot of this.
Computer Networks

TCP/IP Illustrated, Vol. 1: The Protocols

Unix Network Programming, Volume 1: The Sockets Networking API

Compilers/Low Level computer Function

Knowing how a computer actually works, from electricity, to EE principles , through assembly to compilers may also interest you.
Code: The Hidden Language of Computer Hardware and Software

Computer Systems: A Programmer's Perspective

Compilers: Principles, Techniques, and Tools

u/vampatori · 5 pointsr/YouShouldPlay

First off, the very first thought that came into my head: Have you tried Dungeons & Dragons or another Pen & Paper role-playing-game? I feel like they would be perfect for you.. not only are they the best games as there are no limitations, all you need is any means of communicating and your imagination.

Here are some links to get started:

  • Basic Rules - Freely available online.
  • Starter Set is incredibly good value and includes the basic rules, dice, pre-made characters, and your first adventure.
  • - Virtual table-top for playing online with others, includes voice & video chat.
  • /r/lfg - A place to find people to play with online.
  • /r/dndnext - Dedicated to the latest (5th) edition of D&D. Really nice and friendly sub.


    Anyway, can you give us a bit of insight into your input mechanisms? How have you typed this post? How do you browse the web? What limitations do you have in terms of input speed and simultaneous inputs? What about moving pointers around, any limitations?

    I think with information like that we'd be better able to recommend games for you.

    Assuming input takes time and you can't push buttons quickly or control a pointer quickly - turn-based / pause-based games come to mind (also a personal favourite of mine).

    As I said in another post here, I highly recommend Voice Attack for voice-controlled input. I use it to assist me in games, but I see no reason you couldn't rely on it entirely. There is a small lag between saying something and it being actioned, which would rule out some of the more twitchy games.

    I've never tried it, but there's JoyToKey which allows you to use a controller to act as keyboard/mouse for gaming (and other applications, presumably). I imagine it's a lot easier to use a controller with your feet than a mouse and keyboard (I could be wrong, I don't know).

    What about a touch-screen?


    Civilization V

    This is a great turn-based strategy game that allows you to create a civilization and take it from the dawn of agriculture to space. I'd highly recommend getting this with all the DLC expansions in a bundle, as they add a tremendous amount to the game. This often goes on sale for very little.

    XCOM: Enemy Unknown

    This is a great turn-based tactical combat game where earth is under attack from aliens and you're tasked with building up an organisation to defeat them. Really one of the best games released in a long time, definitely worth a look. Play Ironman for the real experience (you'll see what I mean). You can play this with a controller.


    This is a really good 'battle' card game. These sorts of games are not my thing at all, I've never got into Magic and so on, but Hearthstone is the distilled essence of these games and is simple, deep, and a tremendous amount of fun. It has by far and away the best match-making, so you always win about 50% of your games, keeping the challenge on. While there is a timed element to each turn, it's generous and I doubt you'll have issues in terms of controlling it. Free to play, so no harm in giving it a go.

    EvE Online

    The space MMO. While this is real-time, for the most part it's actually pretty slow, and its combat is based on a lock-on system where you can select targets from a list. I don't know how well Voice Attack meshes (I no longer play), but from memory it should be really good. There's almost nothing you can't take part in here, and you can be 100% as effective as other players in many, many roles. Hell, you don't even need to leave a station if you want.. you can form your own corporation, trade, build, hire other players, lead other players, wage war, all from the comfort of the station!

    Pillars of Eternity

    This was just released and I'm absolutely loving it - it's a modern take on the old-school RPG games like Baldur's Gate and Planescape. While it is real-time, you can choose the speed to be slower, and you can pause it at any time to issue orders to your party.

    Elite: Dangerous

    Getting more tricky now.. this is a real-time space-ship simulator where you can trade, fight, mine, pirate, explore, etc. However, it's made for being controlled with joysticks and works perfectly with Voice Attack so I feel like you'd be able to control it more than well enough. In fact, you could probably do it with Voice Attack alone - though you'd have to run from pirates. Also, there is a rank Mostly 'armless that you could attain! (sorry, couldn't help myself!)

    World of Warcraft

    The definitive MMO. While I've not looked into it, it's so popular I'm sure if you do some research on it there will be a wealth of options. It's lock-on based combat, so again Voice Attack will work here perfectly for calling out attacks, movement with a controller, and so on.


    TL;DR: Really though, I think the limits are only what you place on yourself. What's stopping you from playing an FPS, MMO, RTS, etc. with your feet and Voice Attack?

    EDIT: Sorry, I thought this was in /r/gamingsuggestions/ which is why I included D&D. I'll leave it as I think it would be good in this instance.
u/DB_Helper · 2 pointsr/DeadBedrooms

>For the princess thing I very strongly recommend reading a book.

Amazing book... I used to do the same
thing you describe of not listening to my wife's body language when she is clearly not in a receptive mood. After 20 minutes of what you see as "giving", but she experiences as "bothering" or "just looking for sex", she's annoyed, and you're horny and feeling rejected. The book gives concrete actions to avoid this situation and drastically increase your odds of successfully initiating sex, while giving your wife the non sexual reassurance and affection she needs.

On a side note, it sounds like part of the problem is that your wife just doesn't feel sexy. Are you able to talk honestly with her about her weight? Do you prefer her at her current weight, or would you prefer if she was smaller (or bigger)? Dr. Jason Fung's blog, IDM, had a lot of information on intermittent fasting that can be very helpful if losing a few pounds would help her to feel better about herself.

My wife has always been very toned, athletic and curvy. After three kids she was feeling like her body was sagging, despite the fact that she still looked fantastic. I tell her almost every day how sexy she is, but she consistently brings up how her boobs are not as big as they were while she was breastfeeding (she's a solid, perky B cup) and her core just isn't like it used to be (she was a swimmer in high school, has great muscle tone, and has a small waist compared to boobs and hips). Lately, we have both been doing more exercise and a one day a week 24 hour fast, and she has lost about 5 or 10 pounds. Honestly, she looks great now, but she looked equally great 10 pounds heavier. But now when I look at her and tell her she looks great, she checks herself out in the mirror and says "yeah I do!". She is now much more confident, and I'm sure that has something to do with her starting to initiate far more frequently in the past few months.

u/becoming_dr_slump · 1 pointr/90daysgoal

Hello 90-dayers!

I think this is a great initiative. I was previously at /r/BTFC, which I found extremely useful to get focused on goals. As there will be many changes for me in the next months (taking a leave of absence), good to have a place, community to track my progress and focus on my goals. This is my first 90 day challenge, so I'm somewhat lost on procedure, I'll wing it!

++++ Stats ++++

  • M/35/183cm
  • Current Weight: 88kg
  • Highest Weight (2012): 93kg
  • Lowest (recent) Weight: Either current, or need to go back in time to when I was 17, as I've been putting fat on progressively (thus my username of becoming_dr_slump).
  • Current Body Fat: 25%
  • Diet: Mediterranean, with too many sugary snacks.
  • Exercise: YAYOG (Currently 1st class, week 4) + occasional biking + some running + occasional Kettlebell

    ++++ GOALS FOR FITNESS & DIET ++++

    Diet: Clean eating. Quit sugary snacks. I eat more or less cleanly, except for chocolates on sugars. By October 22, I am extremely proud that I've eaten sugar free on 80 of the 90 days.

    Fitness - Sprint 1: July 15 - August 13: I am feeling strong as I'm on Week 7 of Yayog 1st class. Also, I feel the burn from doing Enter The Kettlebell 3 days a week.

    Fitness - Sprint 2: August 19 - September 17: I am walking tall and confident as I've finished 1st class. To celebrate, I ran my own sprint triathlon on rest week.

    Fitness - Sprint 3: September 23 - October 22: I am strong and generous as I'm in the next 10-week program, week5. I can complete a Turkish Get Up with my 16kg Kettlebell. And do a pistol on either leg without it.

    I have no goals on dropping weight, as long as it remains around current level or lower. But I'll be tremendously pleased if body fat goes down to 20%.


    In the last six months, I've become aware of a lot of crap heritage I carry on my shoulders from growing in a narcissistic family. I need to do a lot of cleanup as I choose to (1) have a good life, (2) stop the cycle of narcissism so I don't become narcissistic myself and (3) build an alternative mindset for me and my family. The narcissistic circle finishes with me.

  • By Oct 22nd, every single week, I've taken time to review my goals, the blueprint for the life I want to build, plan action and adjusted my plan. And taken time to care for my mindset and goals.

  • In sprint 1, I feel liberated and full of energy, as I complete all the exercises on The Happiness Trap: How to Stop Struggling and Start Living: A Guide to ACT: Russ Harris, Steven Hayes:

  • In sprint 2, I'm a generous and happier recovering nice guy, as I've completed all l the exercises on No More Mr Nice Guy: Robert A. Glover. Plus another difficult book.

  • In sprint 3, I've read 4 more difficult books and done exercises. Books to be determined based on needs I determine in the next month.

    ++++ GOALS FOR PROVIDER ++++

    By Oct 22nd, I'm confident on my future as I've built a local network of work contacts of 50 people, and identified 10 new positions I'm going to apply to for my next position.

    ++++ OTHER ++++

    I need to clean up a lot of my psychological heritage, as it's negatively affecting my relationships and life in general.

    I start a leave of absence this summer, to recharge batteries and reconsider next career moves.

    I will travel to my country for one month with my kids (source of fun and stress), which will allow me to better understand where I come from and how is my family working.

    ++++ Let's Be Friends ++++

    I'm on Fitocracy. I invite you to friend/follow me/message me!

    Also, if anyone else on Europe time, support PMs & checks are an option. PM to discuss (never done this one before, seems like a good idea).

    Good luck, everyone! We can do this!
u/6553321 · 1 pointr/programming

> The next question would be what are some key concepts I should learn before I start programming?

How to write instruction manuals for retards. I don't know actually. I've taught programming (friends and TAing) but I don't know how to teach someone to be a programmer. It takes a certain attitude. You have a problem and there are certain small steps you are allowed to perform. Programming requires you to translate your problem in a sequence of small steps. There are some people who have a knack for it and they will catch it immediately. Others will look at problem, know the steps but blank out completely and never be able to make the connection of what steps they can perform to solve the problem using the small steps. I would recommend go slow and up the difficulty enough to keep you interested but not so much as to discourage you. I don't know how hard you it will be for you but I think the attitude in proving a theorem in mathematics is what would help. It sort of has the attention to tiny detail, creativity and dealing with the frustration of not seeing the solution immediately that programming requires. I think the easiest way to learning how to program would be trying.

> What do I need to install in my computer in order to practice?

I meant to answer this question in my first post. For C on Windows your options also include installing cygwin and then pretending you're on Linux. For Java, Eclipse. Itself written in Java, so cross platform. Perl, Python should be again avilable on all Platforms on the commandline, all it needs is a text editor (haven't seen any Perl IDEs). Oh in C if you're using good old gcc you should also choose a text editor. A good IDE with a not intimidating example project should be decent, but you'll probably become confident a lot quicker if you were using a simple text editor with just your compiler and interpreter.

> Is there a great difference in programming command line programs and GUI programs? What do I need to know to do GUI programs? Do I need special software / libraries / skills?

To be honest I have barely done any GUI programming. I have modified a couple of GUI programs and have done some 3D stuff in OpenGL. My answer is GUI programming is just annoying not interesting. Most of the real work does not involve how you interact with the user. GUI programming is mostly calling a bunch of library functions with some voodoo magic. Of course no matter how technically awesome your program is it's not impressive to a non-programmer until they see a GUI.

> Could you recommend a good book for self-reference?

For Perl the camel book (larry Wall is author of Perl) will serve you your entire life. For C K&R is by the auhtors of the language and considered the definitive learn C book (haven't used though). As far as C++ don't learn that as first language but I know there is a book by Stroussup and Deitel and Deitel is used in almost all universities. I found Thinking in C++ to be useful (used in my school alongside Deitel and Deitel) but please please don't learn C++ first. I plan on reading ANSI common LISP by Paul Graham one of these days.

But seriously a book won't get you very far. The quickest way of learning programming is doing it. Once you're confident programming you'll find all languages making sense and starting to edit a program in a language is a great way to learn. You have code examples right in front of you and the fact that it already runs and does most of the stuff boosts your confidence until you get comfortable enough with the language that you can see yourself do the whole thing.

> I tried teaching myself Python a while back, but then they upgraded Python to 3.0 and I couldn't do anything anymore and I was very confused as to why. It since has become clear to me that knowing a couple of codes in a particular programming language is not the same as "programming". So, I would like to know more. Could you please help?

That's why I said start with C. It's a very concise language that does exactly what you say. And there is slmost nothing to remember for it. It should help you develop the programmer mentality. The other school of thought though is that a learner computer language is something that helps you express algorithms which makes C the worst choice because it is too lcose to what you want to tell the computer rather than the ideas you havem but I'm from the bottom up rather than top-down school of thought.

u/Kortheo · 3 pointsr/needadvice

You sound a whole lot like me a few years ago. I could have pretty much written this post, with some family specifics changed a bit. So here's my advice based on my experience.

What you're going through is totally normal and common. It might not seem like it, especially if you don't have friends who are going through similar circumstances, but it is. Even if you have a great relationship with your family, moving back home after college can be rough. After being gone for a few years and having total freedom away from family, moving back home can feel like a step backwards, even though it's not. It just means that you're coming into the 'real world', and that requires a certain amount of time transitioning. It's not easy, but you'll get through it.

When I moved home, I didn't expect to be living there for longer than 1 year, but it ended up being 1.5 years. It's not a big deal, just keep in mind that it may take you more or less time than you expect to get on your feet and where you want to be. Once you do have a solid income, take advantage of cheap or free rent (if you are so luckY) living at home to pay off as much student debt as possible (assuming you have it), or save as much of an emergency fund as possible. If you want to feel independent person while living at home, rather than a guest/child, being financially independent is important.

I also struggled somewhat with anxiety/depression during this stage of my life. is a thing and I ended up being diagnosed with that when seeking help. Basically, big life changes can be rough, surprise! Don't be afraid to seek help is you're really struggling. As time passes you will adjust to your new situation and things will get a bit easier. Regarding your Edit on depression, those are definitely things you could explore with a competant therapist, if you're so inclined. If you want a cheap option for working through depression, I can highly recommend this book: It has been extremely helpful for me personally.

As for what you want to do with your life... I know it's hard, but don't worry too much. It's totally OK to not know what you want to do with your life at 22. Most people probably don't. As long as you are making a consistent effort to find out what you want to do, you're fine. And you have plenty of time left to enjoy yourself once you're employed and have money. What you may find as you grow throughout your 20s is that there is more time in life to enjoy yourself than you may currently realize. In terms of your generral post-transition year anxieties, I think things will become clearer once you're closer to the end of this year. There are probably too many unknowns for you to properly plan yet.

For meeting new people, meetup groups are nice. Consider a local reddit group if there is one. Find a social hobby. Yes, it can be uncomfortable or awkward or trigger social anxiety to go to these events, but the fact is that if you can get psat that you'll be healthier and happier if you're meeting new people right now. Having those social experiences will make getting through this phase all the easier.

Maybe not all of this applies to you, but I hope you get something out of it. Regardless, best of luck to you!

u/AnnieBananny · 1 pointr/BPD

Thank you so much... I needed that today. For some reason, even though I should be jumping up and down cheering (I biked somewhere instead of driving, enjoyed the weather, did well in classes, even turned an assignment in, and am getting together with my friends tonight to go to my favorite bar, a speakeasy) but instead it feels like I've been in a shell for the past 3 months and I'm finally realizing how actually torn up I am about my break-up. It's like I took the blanket off over my head and I'm suddenly realizing just how far I have to go to get back to being the woman I loved and respected a year ago.

So I needed that. You rock too!

And I'm glad you have support... a support system is so fucking important for us borderlines. Some love can go a long way for us.

Anyway, on to the DBT advice! Buy this book. Buy a copy for your friend if you can afford it. It's $13 and worth every penny. I started with this book and it has ALL the skills, plus relevant worksheets. There's a tracking sheet in there to fill out weekly which helps monitor emotions and habits which I would highly recommend, although you could probably find something similar for free online. However, the book is easy to understand, well-organized, and has a lot of examples. My parents say that therapy for me is like 2 full-time classes, and it's true. Skills are practice, practice, practice, until you rewrite your brain patterns until coping healthily becomes habitual.

My therapist started me on distress tolerance... and radical acceptance, which is the hardest skill of all. You can read up on this stuff online but I would really recommend the book. Depending on your situation, you could start with any of the modules, really, but definitely radical acceptance.

Best of luck, I love you! All of you. We're not broken, we're strong as fuck. Our brains have been telling us we're in crisis most of our lives, and each time we've gotten through it.

>If you're going through hell, keep going. -Winston Churchill

u/fajitaman · 4 pointsr/learnprogramming

The usual advice is "get out and program!" and that works, but it can be very tricky coming up with something to write that's also satisfying. The idea is that you learn best by doing, and that many topics in programming can't really be learned without doing. All that stuff is true and I'm not denying that at all, but some of us need more. We need something juicier than spending hours configuring a UI for a project we couldn't care less about. It shouldn't be an exercise in masochism.

I guess what I'm saying is that there are a lot of ways to learn to write code and books are great if you can really sink your teeth into them (a lot of people can't). Code Complete is a great book on the practice of programming. You also say that you "get" OO pretty well, but it might open your eyes to read up on design patterns (e.g., Head First Design Patterns). You have a long way to go before you really get it

In addition to those, you could delve deeper into your languages of choice. There's no way around JavaScript if you're a web programmer, and a book like JavaScript: The Good Parts is pretty enlightening if you've got some experience in JavaScript already. It's a pretty interesting and unusual language.

But sometimes programming is about building gumption, so instead of just being practical, try to figure out what you like about computers and keep going deeper into it. If you have an interest in computer science and not in just building apps, then something like Structure and Interpretation of Computer Programs could instill in you an enthusiasm for computers that trickles down to everything else you do. If you're more interested in web design, there are probably similarly interesting books on artistic design principles.

I think what I'm ultimately saying is that you should find what you enjoy doing and just go deeper down the rabbit hole, getting your hands dirty when it's appropriate and interesting.

u/Astartes_Pius · 1 pointr/Stoicism

(I will be a scientist in a month, so maybe my viewpoint is too scientific.)

Take every interaction with any potential partner as a "quantum-test", Or simply as a scientific experiment. You ask a question from Nature: "Can we function as a couple?" or "Does she have the same attraction towards me?" and then you will get an answer. You should never take any rejection as a personal failure. A "rejection" is just an experimental result which is dependent on

  • the current brain-bio-chemical states of the participants,
  • the weather,
  • the (life)situation in which you are at that moment,
  • her period,
  • her personal past,
  • etc...

    So very few things you are responsible in any "dating" situation. The result of a "dating experiment" says how you two are compatible with each other, and says very little about you personally. Of course you should behave as you think is right. Directed dating is a paradox situation, because if you behave directly as you think "she likes", then you are giving up your true self to impress her. Of course there are certain behavioral patterns but if you just "act" as confident person, then you are just an actor... You should behave as YOU think is right.

    I don't think that the PickUpArt narrative (alpha/beta male, etc...) would be useful in a long term, because it teach you how to ACT, and not how to be happy in your own skin. You would be with a female who loves You, and not your "alpha-mask" which you wear to hide your needy nature...... True success when you can transcend these alpha-beta-male games and you can date without even bother about the endpoint of this experiment. I think Stoicism is a perfect alternative philosophy for dating. OF course you can prefer some results, but you can be HAPPY in any case. She is NOT your key to happiness. None is.

    I can recommend you the book No more mr Nice Guy!. It is perfectly dealing with one of the main problem of our society, which lost his best males nearly 60-70 years ago (during ww2, etc...) .
    And there is a very useful webpage: which can help you to rediscover your true inner Man.
u/iamjosh · 2 pointsr/writing

I just passed my 3 year anniversary of journaling; I haven't missed a single day in that time. I struggled, however, for many years prior trying to establish this habit. I'll answer your questions and then provide some behavior tips for anyone interested in doing the same.

Why I journal:

  • It holds me accountable for my day. It can be a good ethical check.
  • Thinking about my life invariably leads to analyzing my life. Rumination can be dangerous and lead to intense dread if you do it infrequently; but performed daily, it allows for micro-adjustments and begins to diminish the accumulation of regret since you become accountable for your life daily.
  • As a creative person, I tend to spend long periods of time(hours/days/weeks...) alone; this can be dangerous as most people here probably know. During these periods, a lot of my entries are sparse: "I read most of the morning and wrote most of the afternoon...". When I become aware that I've been writing similar entries lately, it is a nice reality check that inspires me to change things up and connect with friends or do something different today to avoid being a "boring person". It's a great anti-rut mechanism.
  • It's a "cornerstone habit". It's hard to express the confidence that comes from knowing that you're capable of doing something daily for so long. I'm not a consistent person by nature, so this really is a huge accomplishment that I find encourages me in other areas of life.
  • As a writer, momentum is crucial. Any activity that gets you thinking and gets you typing is a win.
  • It's simply priceless to have a log of your life. I take this for granted now, but whenever the topic of my journal comes up, friends are always eager to see what my entry says on the day that we did whatever memory is the topic at hand.
  • Most great figures in history kept a journal. A major smug boost!
  • I can think of even more...

    What I chronicle

    This has evolved over time. I write almost an outline of the highlights of my day. I try to avoid self-indulgent writing; this isn't my masterpiece. Once I have the main points of the day down (which usually only takes about 30 seconds), I'll go back and casually fill in the details along with any reflections. My shortest entries can be a sentence or two while my longest can be around 2k words; my average entry is about 500 words. It's important to set a very realistic minimum goal; something that wont overwhelm you on the latest of nights with the heaviest of eyes. Knowing that I can finish an entry in 30 seconds has tricked me into many 10+ minute journal sessions.

    Is daily important?

    I really believe it is. I know people frequently say not to beat yourself up over it and just journal when you remember, but the reality is that if you don't get in the habit of journaling on "boring" days, you most likely wont take the time to write on important days either. Also, behaviors are mindless activities. It's just easier if you turn journaling into a behavior.

    How to create a daily journaling habit

    The Power of Habit is an amazing book. I don't typically like self-help books—this is not one of those! I think all people (but especially writers) should read it or at least become familiar with the core concept that all behaviors have 3 parts: triggers, routines and rewards. I've applied this in many areas of my life, but here's my specific strategy for journaling:

  • trigger: Brushing my teeth at night (I piggybacked off of an existing habit)

  • routine: Briefly outline my day (minimum goal); elaborate if I have more time(stretch goal)

  • reward: Allow myself to get in bed.

    In summary, I know that after I brush my teeth, I should journal and that I can't go to sleep no matter how tired I am until I perform my minimum goal of outlining my day. This might sound like a pain on the longest of days, but after a few months it becomes automatic. I've had long drunk nights where I don't even remember journaling, yet the morning reveals...a great story :)

    I hope that helps someone out there.
u/Medicalizawhat · 10 pointsr/learnprogramming

Well I left school in 10th grade, travelled around and worked odd jobs for most of my 20's until one day while working a particularly shitty job I realized if I didn't make a change soon I'd be doing jobs like that for the rest of my life! So I went to university and studied something unrelated for a few years. Somewhere along the line I clicked a link on Reddit that said "Try Ruby!" and it took me to a site kindof like Code Academy with a tutorial for Ruby. I tried it out, got instantly hooked and started spending all my free time programming!

Eventually it got to the point where programming all the time made me fail a few units so I dropped out of uni. I enrolled in a programming course but that didn't work out either, so I decided to take six months and just teach myself programming full time. It was a really awesome time, I'd wake up every morning and work on my projects, take online courses and read programming books all day!

Eventually I started running out of money. I didn't think I was good enough yet but the fact that I was rapidly becoming destitute gave me the kick I needed to start applying for jobs. I was incredibly lucky in the fact that I ended up getting hired at the first place I applied. Apparently they chose me over the other candidates because of my "life experience" and the projects on my Github, although the fact that I was willing to work for peanuts helped as well haha.

That was over six months ago and I'm still really enjoying it. If I were to offer some advice it would be to just stick with it. Even when you doubt that you are good enough, or smart enough, or that this whole learn programming idea might not work out at all and you'll never get a job - keep at it! If you enjoy programming and put the effort in then someone, somewhere will give you a chance, and all you need is one chance.

Also, make sure to take projects through to completion and post them on your Github. One simple, well written project is more valuable then 20 half finished ones. Code your projects knowing that your future employer will be reading it and deciding whether or not to hire you!

To that end, I'd highly recommend Clean Code. This book really helped me, but I'd recommend reading it after you've written a project of your own. Then, as you read through the book, go through and refactor your code.

Finally, when you're thinking of projects, don't worry about trying to create something amazing straight off the bat. Pick anything that interests you, maybe scratch an itch, or even re-implement something that already exists. At the end of the day the idea does't matter as much as the fact that you've spent the time and effort to build something. If you look at my projects, they're boring as anything! But they were good enough to get my foot in the door.

All the best!

u/IdyllMermaid · 3 pointsr/TheGirlSurvivalGuide

I was your age when I had sex for the first time, and it was with my first love. While I felt some trepidation, having to get past the "script"about sex before marriage that my parents had always voiced....I felt comfortable and safe with my partner. Also I had enjoyed the excitement between us, when we'd kiss, or touch, or rub, and was physically ready for that to proceed.


Go slow, the first time having penetrative sex may feel uncomfortable, but if it's hurting you, stop and try another position, or go back to touching and kissing for awhile. Communication is important, don't be ashamed to voice when something feels more good or less good, or uncomfortable.

Consider stimulating your clitoris before and during sex, or have him touch you/stimulate you there first. For many women it can make a difference, that building excitement and natural moisture makes their body ready for penetrative sex.

For my first time, intercourse didn't feel good at first and my partner could tell. I told him, "It's going to hurt anyways, lets just get it over with."...He stopped and gave me a huge cuddle, and told me "Sweetie, that's silly, we've got lots of time."

Maybe you are already aware of this, but in case you're not:

It's very exciting for men, if they haven't much experience looking and touching women so they may ejaculate quickly. If that happens, try to be sweet (don't act disappointed). If you want to continue because you're still excited, you can ask him to kiss & touch you (maybe give you oral sex if you're ready?), and he will likely be able to get hard again in 5-20 minutes, if you want to try again.

In general, orgasms are easy for men, they can finish quickly, and they are very visually oriented (visuals stimulate them). For women, sex is much more tied to emotions and thoughts, and while this varies per each women, having an orgasm from penetrative sex may not happen. It can still feel pleasurable, nice, exciting, just may not end with a "bang". And that's OK.

Feeling connected, loved, and excited by your partner is what's important. If the first time is awkward, you can both communicate and explore and develop your sexual relationship.


If either of you are interested in "studying" about sexual techniques (NOT a requirement for your first time- just a suggestion for future)

u/jmadrox · 1 pointr/strength_training

Regardless of goals, and based on your comment below about being a fast reader, track down a copy of Mark Rippetoe's Starting Strength (link below). Sure if you dont want to spend the cash you can find a pdf somewhere, but you can get a kindle version for $10 and its valuable.

It will help you work out some basics and understanding of weigh training. As a beginner I wouldn't recommend anything like 5/3/1, there isnt enough progression. You need a program with workout to workout or week to week linear progression. Your adaptation cycle will still be so short, so make the most of your time in the gym.

Starting Strength 3x5 workout, or StrongLifts 5x5 will be a great starting place. The routines look boring / few exercises, but trust them. They are all you need at the moment. You will get stronger and bigger, but as a beginner you need to build up a good foundation.

Supplements arent as critical as a good diet. They "Supplement it" (funny that eh?). You need to be eating a solid calorific excess, but dont go to town. Get an app like "My fitness Pal" and enter your body weight, target body weight, and it will help you to calculate your required calorific intake.

Protein powder. 1.7-2g pf protein / kg of body weight daily. always.
Creatine 5g / day every day. one of the best backed supplements.
Pre-workout - only if you need it. Something with stims is helpful if you work out in the morning or feel lethargic, but the benefit is marginal, mostly psychological.

Be careful on your assumptions on Roids. I know some guys on riods, and some natty guys are just as big. Genetics play a big part in it. Dont sweat it. If you go into the area, no one will look down on you. They werent born big. They started at some stage too. They know it, and to be honest, they will be more impressed by you going into the free weights and lifting, more than if you kept to the machines.

u/SoWaS · 1 pointr/seduction

First thing. Clean. Make sure your apartment, room, car or what ever is spotless. This is a really important step. It's the first step of taking back control, it's also going to show you a near immediate reward for your actions.

So now that you're sitting in a clean environment, start writing. Let all the negative emotion just spew, don't worry about spelling, grammar or any of that, it's just a purge. Once the rambling and emotion is out, review it and begin building. What are your goals? How are you going to achieve them? Right now your broken. Good! Because now is the perfect time to rebuild. You WILL rebuild your self into the man you were ment to be. What's he like? What does he do? Write about him. Start becoming him.

So now that you have recognized that you are the most important being in your life, treat your self. Buy a new out fit, or a good book, a new camera, what ever you want that can be affordable and positive. I personally bought a new pair of pants that was too small because next...

Gym. Find a good work out program. This new iron temple you should be praying at daily. You gain confidence with new found muscle but more importantly, this will also help you respect your self, by going daily and holding your self to your word.

Lastly, after reading through the comments and learning more about you, I think one of the best books you could read is:

2 years ago what I thought was the love of my life ended it. Best thing that has ever happened to me. This book combined with all the emotion I was able to harness and refine myself. Tomorrow I'm going out on a date with a beautiful girl (2 years ago I thought was out of my league) and I'm just excited to have fun. There is no more wondering, does the girl like me? Is he talking to other people? Would she want to be my gf? Instead, I don't care because I still don't know if she is compatible for my new life style. It's an amazing feeling to be the one in control.

Invest in your self and become the man you wanna be. You got this.

u/filmdude · 1 pointr/NoFap

Keep going through the tough times, man! One big problem with this sub is that it sets expectations way to high for people in recovery. Sure, it helps overall with confidence and anxiety to some extent, but not nearly as much as a lot of people claim.

The key thing to remember is that porn and masturbation will do NOTHING to help with your "awkwardness." Porn and masturbation will make your anxiety much much worse. Almost every here can agree to that and you know it is the truth.

The big problem here is that you have to really believe with all your heart that porn and masturbation offer you ZERO positives.

Go ahead and do some research for yourself about the positives of porn and masturbation. Question everything you read and you will soon realize that people out there are fooling themselves. They are addicted to a drug and are desperate to somehow justify their drug-use. People are willing to go to great lengths to explain their shitty habits. We are very protective of things that we know deep down are addictions.

Here is a little reading material for you! Remember to never stop researching and exploring this addiction. It is cunning and the more you learn the better success you will have.

Remember to take it all with a grain of salt. The important thing is that these resources will help you start to question your inner-addict.

(it's my own words, so I hope that doesn't come across as narcissistic. I just think thinking about these things is extremely important in early recovery)

This book is great for dealing with shame. It has helped me greatly with my own struggle to deal with my past and make peace with my mistakes and accepting myself as a person.

This book is not written for sex addiction, but it shows how recovery can be an extremely positive experience. I would definitely recommend reading it and substituting "porn and masturbation" for "nicotine."

There is a free PDF download on the website. I really like this book because it gives concrete strategies for overcoming porn and masturbation addiction. Read it all with a grain of salt. And approach everything in your initial recovery with skepticism.

I'm not a huge fan of Patrick Carnes because he seems to miss a basic idea about recovery that I think is important. But this book really is great for exploring your addiction. I would recommend it in small doses. It is highly interactive and it is sometimes very challenging to work with. This book is best used with the help of a therapist.

Get rid of your unhealthy habits! You deserve to be happy! Here is a lifehack for not bringing your phone to bed at night. This trick was essential to my recovery.

u/balefrost · 2 pointsr/AskProgramming

Heh, sure.

A lot of people are fans of Code Complete. I tried reading it after being in industry for a decade, and I found it to be very dry and boring. The general consensus from people that I've talked to is that it's more useful when you're just starting out. Maybe I just came to it too late.

A better book (in my opinion) in that same vein is Clean Code. Clean code is shorter, more focused, and has better real-world examples. It feels less "complete" (hue hue) than Code Complete, but to me, that's a strength. As a quick point of comparison: Code Complete devotes 32 pages to the chapter on identifier naming; Clean Code devotes just 14.

I got a lot out of Design Patterns. I seem to recall that the pattern fad was in full swing back when I read this in 2005-ish. I think I had independently discovered some of the patterns already at that point, but this book helped me to codify those ideas and also showed me some new ones. Some of these patterns are now seen as antipatterns (I'm looking at you, Singleton!), and all of the patterns have an object-oriented bias. But there's still something useful in the pattern language, and this book is a reasonably comprehensive start. The book is somewhat dry, and some people report that Head First Design Patterns is a gentler and friendlier introduction. Head First Design Patterns hits the essential patterns, but misses a lot of the less popular ones.

Eventually, you'll need to work in a codebase with some technical debt. Maybe it's debt that somebody else put there, or maybe it's debt that you introduced. Working Effectively with Legacy Code is still my go-to recommendation. It defines technical debt as code that is not under test, it introduces the idea of "seams" that you can use to pry apart code that's too tightly coupled, and it then provides a cookbook of specific scenarios and reasonable approaches.

If you're looking for thought-provoking videos, I recommend anything by Rich Hickey. I don't know if I've watched all of those, but I remember good things about Hammock Driven Development and especially Simple Made Easy.

Get comfortable with a source control system. I didn't use source control in college, since it wasn't needed for any classes, and that was a missed opportunity. The whole world loves Git, so you'll probably want to learn it if you haven't already. But I'll also toss out a recommendation for Mercurial. I haven't used it in years, but I remember finding it to be quite good.

Good luck!

u/TheStudyOf_Wumbo · 7 pointsr/UofT

You're GPA is great so you don't need to worry about that, IMO I'd list it on your resume.

I would recommend the following:

  1. Do this book, attempt all the chapters if you can (you might be able to leave out threading, but I still recommend it): (Note: there is a better book but this is a good starting book)

    While concurrently (har har) reading the book, any data structures you don't know, learn. Program them and test that they work.

    Further, check out CSC263 materials and see if you can implement the data structures. You should also at the end of CtCI be able to attempt some of the assignments from CSC263 and complete them.

    Also try coding problems on hackerrank or leetcode or w/e the sites are called -- note they can be demoralizing on hard but it's worth it and you learn a lot

  2. Now that it's the summer time, try to create some bigger projects. If you're going to make a smaller project then make sure you learn something inside and out... for example if you're learning Java and do something with reflection, go absolutely ham on learning how reflection works

    Pick a language and learn it well, again if you do Java, then know how garbage collection works and other core language features (ex: If I ask you what a GC root is, do you know? [ask yourself this in 4 months] Can you compile from the command line? Do you know what Maven is and how to use it? Can you use lambdas and the new stream API? What is type erasure? etc)

    C++ is great at removing your hair, but you'll learn a lot... and if you ever have to work on a C++ project you won't want to kill yourself when you accidentally do object slicing or something funny like this.

  3. Learn SQL/databases/one ORM framework, and interface it with your language of choice (will make CSC343 much easier for you)

  4. Try to learn some web stuff so if you come across it you won't be confused by what to do. Making your own personal site from a template is a good start

  5. Learn either Git or Mercurial well, and good practices (ex: always branch and pull to the master), which will dramatically save you headaches when you get hired. You do not want to be 'that guy' who fucks up the repo...

  6. Learn C or assembly if you can, this will give you the bigger picture and make CSC209/CSC258 also A marks for you (I recommend NASM but MIPS or ARM can work great too)

  7. Get someone to proof read your resume, I don't know anyone who had a proper first resume.

  8. IF YOU CAN... try to contribute to a massive project. Committing even a one line bug fix to a massive project can be a significant amount of work and looks really good on a resume. In fact, I've been told by multiple employers that seeing someone do work on a massive code base that isn't theirs is great brownie points for getting hired since that is what you'll be doing.

    Obviously put your work on github or somewhere, though I think you know that this is implied

    As you can see, attempting the above will directly benefit the following courses:

  • CSC207 (if you do Java)
  • CSC209 (if you do C, or C++)
  • CSC258 (if you do any assembly)
  • CSC236/240/263/265/373 (from CtCI, general experience, etc)
  • CSC301/302 (if you do contributions to a large database)
  • CSC309 (if you do any web stuff)
  • CSC343 (databases)
  • CSC369 (threading, other misc stuff)

    Sounds good doesn't it? Though this is probably only possible if you are doing literally nothing over the summer ;)
u/bullmoose_atx · 3 pointsr/CFBOffTopic

You sound like me. Here are some helpful resources I've found on reddit and elsewhere. Obviously, this is just my personal list so please ignore anything you don't think will help you.

Self-improvement subs: like most subs, there is a lot of junk but sorting by best all time/year/month leads to some good articles and posts.

  • /r/DecidingToBeBetter
  • /r/selfimprovement

    Self improvement books

  • The Power of Habit - it explains the science behind how we form habits (both good and bad) and how to change them.
  • Mindfulness: An Eight-Week Plan for Finding Peace in a Frantic World - introduces the basics of mindfulness and meditation while providing a good beginner's course if you want to start meditating.

    Fitness Subs

  • /r/Fitness - a mixed bag if you're not focused on body building but there are good posts that are applicable to a variety of fitness goals in there.
  • /r/loseit - good sub for motivation. Average redditors making amazing progress.
  • /r/bodyweightfitness - a good resource if you want to spend time working out at home but don't have a bunch of equipment.
  • /r/crossfit - this one is more controversial but it is something I personally enjoy. I believe in the idea that the best workout is the one you will actually do.

    Fitness App (free)

  • Myfitnesspal - an excellent tool for tracking calories and macros (carbs, fat, protein).
  • Jefit - A resource for logging and tracking workouts. I just started this one but a lot of people use it.
  • Chains - this is a great app for any habit you are trying to create/break including fitness habits. Simple Example - if you are trying to drink more water, add a chain each day you drink 8 glasses. It allows you to visualize a habit being formed or broken.

    Sites You Might Find Helpful

  • skillsyouneed - includes life and personal skills.
  • Artofmanliness - apologies if you are not male but this is also an excellent resource for personal skills.

u/fedupBiPeD · 2 pointsr/BorderlinePDisorder

Hi, welcome to the club :) Do you have any questions in particular?

Ideally at this point you should be thinking about the best way to incorporate BPD treatment into your daily life. Whether it's actual therapy or researching it on your own, you would ideally want to set yourself up so that you inevitably have to think about it all on a daily basis. This ensures that, over time, you'll become more of an expert on the subject than a simple patient of the illness. By knowing how it came to be and how it works, eventually you'll be able to catch yourself and deal with yourself before getting into episodes.

Ultimately it comes down to being able to identify your emotions as they occur, and being able to diffuse the destructive ones before they take over any rational thought. Some helpful resources:

  • Dialectical Behaviour Therapy (DBT), if you can afford it, has proven to be highly useful for BPD. BPD used to be considered an untreatable condition until DBT was put together. It is essentially a spinoff of Cognitive Behavioural Therapy (CBT) that has incorporated elements from buddhist philosophy (thus the Dialectic part). DBT can be hard to grasp at first. Don't worry about it too much, just keep showing up.
  • One of my favourite workbooks that teach DBT is The Dialectical Behavior Therapy Skills Workbook. The link I shared is to Amazon, but you can also go to r/dbtselfhelp and search for pdfs of many helpful books on the subject.
  • You may be prescribed medicine. This is done in the hopes that it will help to take the edge off, not to cure you. The cure comes from actively training your brain to think differently under duress.
  • There are many apps that can help you keep up with self-care. Some deal with symptom relief, some have diary cards. Here's a useful list. I personally really like an app called SuperBetter, very customizable and fun, created by this lovely lady.

    You will often read and be told that BPD is something you're going to live with for the rest of your life. This isn't exactly wrong, but it isn't as severe as it sounds. There are many success stories. There are even success stories that didn't require years of therapy. What cured people generally have in common is a keen interest in learning more about the condition, dedication, and compassion towards oneself when there are slip-ups. They are deemed success stories not because they no longer get triggered by silly things, but because their way of dealing with these triggers is no longer problematic most of the time.
u/baultista · 2 pointsr/learnprogramming

I've always felt like C is a good language for a programmer to think in. With that being said, I often recommend that a programmer who doesn't need to know C++ learn C if (s)he wants to learn something that will improve his/her skill across the board.

C will give you a good appreciation of what's going on behind the scenes in many of the languages you use. You'll get an appreciation for how passing by value and reference works in other languages thanks to pointers. You'll learn how your strings are actually managed in memory. You'll have a better understanding of how many of those built-in generics you may use (List<>, LinkedList<>, HashMap<>) actually work, because if you want to use them in C you'll have to implement them yourself or download a source file and read it to understand the author's implementation.

This knowledge will help you build more elegant solutions. You'll be less sloppy and gratuitous creating new strings anywhere and everywhere, and may even find yourself using references more often. Your code may or may not be cleaner, but you'll have an appreciation for how and why you should write code for runtime efficiency. You'll be more likely to use the right data structure for your task at hand.

The best part is that C has a great standard resource for learning the language. Pick up The C Programming Language Second Edition and read it cover to cover. By the time you're done you'll know everything you need to know about C, and will have a wonderful reference in the even that you need to use C later on.

If you want to improve your object-oriented programming skills, you don't need to learn a new language. It is best to learn OO independent of any language in order to gather a strong understanding of the underlying concepts and to be able to apply it to any language. Craig Larman's Applying UML and Patterns is the best book I've ever read on the subject.

u/strolls · 5 pointsr/UKInvesting

Read Tim Hale's Smarter Investing and then The Intelligent Investor.

Yours isn't the worst active strategy I've seen, but it seems like guesswork that their "longterm promise" means they're currently below intrinsic value. Likewise, selling them after 15% or 20% seems quite arbitrary.

The investors I respect look at the fundamental value of the company, based on historic earnings and growth. Some dismiss the term "value investing" but nevertheless their work is built on the foundations of Benjamin Graham's principles.

If you find a company which sells for £1 a share and it has been paying dividends of 10p a share the last several years then you can have some confidence that buying that share is going give you a 10% annual return. That is the fundamental value of the company.

Obviously you can't look solely at dividends for a number of reasons. They have become unfashionable, and share buybacks are more tax-efficient in the USA. A growth company will reinvest its earnings, so your stock holding is more valuable if it opens more stores or factories but pays no dividends - hence earnings-per-share is a more accurate representation of how well the company is doing. To be any good at this kind of thing - and I certainly am not - you must consider things like cash-flow, margins and debt (in the event of crisis all debt will be paid before shareholders).

I believe you should read Smarter Investing first, as it's a very clear explanation of the current state of evidence-based investing knowledge. The majority of retail investors are best off in index funds, as the majority of professional fund managers don't beat that [1, 2, 3] - I think I know why that is, but do you have a theory? IMO you should fully understand passive investing because it's the methodology that you, as an active investor, have to beat or disprove.

Then Benjamin Graham's books will set you down the path to valuing companies.

If you paid off your mortgage yourself by the age of 36 then you're on the right track.

There are some excellent videos on YouTube. IMO the Fundsmith AGMs are worth watching; my current favourites are of Paul Lountzis speaking at the Ivey business school.

u/colinaut · 3 pointsr/ACL

I can give some perspective as a long time cyclist and more recent lifter who then had an ACL injury (not weightlifting related). First off just because you were a strong runner (or in my case cyclist) won't make you automatically good at squats/deadlifts. It'll give you a bit of a head start since you'll have some leg muscles to work with but squats use some different muscles and it used them in a different manner. Lifting heavy causes different muscle adaptations and is a skill in its own right.

As to what strength progress you should be able to see… That's hard to say since you don't have pre-injury totals to look at. Leg press is a good quad exercise but doesn't have a lot of carryover to squats. Most people can leg press more than they can squat but there is no set percentage ratio since training in leg press is different than training in squats.

Personally I was able to get back to my pre-injury squat weight at 6 months. I feel I could have lifted more earlier but I was being extra careful. I'm currently at 10 months and lifting more than I was pre-injury. I'm not dropping my lifting stats as it's meaningless to compare mine to yours since you are new to lifting.

Basically with your inexperience, the only numbers I think you can use as reference are to untrained/novice lifters. That said you are not even a typical untrained lifter since you are recovering from a major injury. The Symmetric Strength Strength Standards can give you some insight but there is no gold standard. So take a look at those and use them as something to aim for, but also don't get upset that you aren't anywhere near novice yet.

With a good program, dedication, and enough protein and calories, you likely should be able to hit novice levels in a 2-3 months. Since you have an injury you are recovering from then it will likely take a little longer, depending on how much you are still limited by your injury. You should of course focus on good form and making sure you don't compensate. Also be make sure to include single leg work as your muscles are likely still imbalanced: Bulgarian split squats, lunges, single leg deadlifts, calf raises, etc..

In general, I think it's really good that you are adding in strength training. One of the best ways to protect that knee from further damage and osteoarthritis is to build up and maintain the muscles that support your leg. IMHO it is important to be stronger than you were before the surgery in order to support that knee.

BTW, if you don't have a program look into Starting Strength and/or Phrak's Greyskull LP. The r/fitness sub has a good overview of programs. They have a big bug up their ass against Starting Strength but honestly while Phrak's has some advantages, SS is a decent place to start and has worked for many lifters. The Starting Strength book is also in my opinion a must read for how well it explains how to execute the main lifts. The r/startingstrength subreddit is a good place to post form checks if you don't have someone to help spot your form. Rippitoe's nutrition advice in the book leaves much to be desired but that's a different topic.

u/autumnflower · 13 pointsr/islam

Well at least you know what's wrong. First step to self improvement is admitting something is wrong. So you're ahead of the curve here.

The door to tawbah is never closed. Tawbah doesn't mean saying "I'm sorry!" and then going straight back into doing wrong. It means a genuine regret and attempt to put things right. God (swt) doesn't expect perfection out of us and we aren't perfect, but He does expect a genuine and strong effort to do our best. Thinking about whether hinduism is right or not is not going to send you to hell if your end conclusion was it's not right and God is one.

You need to learn the power of habit. In fact go buy the [book] (

If you look at all your problems together, it may seem insurmountable, I recommend writing down a list. What do you want to change: Start with small goals and work your way through it.

For example, the number 1 thing that is a problem for you right now is salah. If doing 5 salat everyday looks like too much, start with the commitment to do a salat every single day and maintain for a few weeks. Focus on the getting the salat right, do it slow, contemplate the words and get into it.

Then add another and another every week or so, until you feel comfortable performing all five salat.

Once you have that down. Move on to the next item. Your parents. Your relationship doesn't need to be perfect, but make a commitment to do something nice to them once a day. Just saying thank you, I love you, I appreciate the effort you do. Buy your mom a gift on mother's day, and tell your dad he's a role model and you love him. It'll be the highlight of his decade if you say this, even he doesn't say much back.

And so on. Also, in your free time, explore ways to strengthen your faith and make it more enjoyable. Watch some inspiring videos, get involved with activities at the masjid, volunteer, join the msa once you're in college etc.

u/oO0-__-0Oo · -5 pointsr/medicine

In a sense, yes. A formal diagnosis is not a requirement, but could be helpful if that is really what is going on. It could also be a hindrance. Unfortunately, the situation in the mental health field nowadays is really complicated, particularly with the fact that so many practitioners have significant problems with pathological narcissism themselves. It is absolutely critical, if you are having a problem with pathological narcissism, that you do take the reigns in addressing the problem. In that regard, narcissistic psychopathology parallels addiction very significantly. Many practitioners even recommend 12 step programs. As you may already know, narcissistic psychopathology is very common among M.D.'s in the U.S. and elsewhere - particularly among surgeons (current estimates of NPD as high as 40%, and my guess is that is low).

Another route is to also consider how your childhood and familial experiences effected you. A good book to read is "The Wizard of Oz and Other Narcissists". Another good one is "Why is It Always About You?" (ignore the preachy Christian parts). Trying to think deeply about the stories and lessons of these books and how they relate to you, your life, and your family and friends is critical. Almost everyone is surrounded by pathological narcissism in some way in the U.S., so there will be useful lessons, to some degree, on practically every page. In particular, if you start realizing that you are suffering/effected by narcissism in your life, heed the lessons pointed out in the Wizard of Oz book - they are extremely useful, but MUST be put into practice, not simply "understood". If you seek out treatment from mental health clinicians, pay very close attention to the sections of the book where she describes how to spot pathological narcissism in clinicians and put it into use. This is critically important regardless of what your condition turns out to be. A clinician with traits or full NPD can not only be unhelpful to your treatment, but even dangerous, and they are all too common. Avoid any religiously preachy clinicians like the plague, as a rule.

Have you considered doing some workbooks? That may be helpful because it removes the personal aspect of the intervention. A good one is:

You might benefit from neurofeedback. Some is better than others, so don't be put off if it doesn't work well the first place you try.

It sounds like you'll want to really pay attention to the covert/introverted narcissism components. If you read about these topics and things start resonating (which can lead to intensely strong feelings, "good" or "bad"), then you are probably on the right track. The absolute key is to be extremely honest with yourself. Really, really extremely honest and non-morally-judgemental. You may also find a lot of value in a concept called "radical acceptance". You seem to be struggling significantly with not being able to be the "Great Savior" to your patients that you wanted to be. You'll probably nee to do a lot of reflection on that and think about how it figures into your life story. Developing a journaling habit, if you don't already, would probably be an excellent idea. Getting your life story out and thinking about why things happened is key. Reflect, integrate realizations into your life story. Rinse and repeat.

I went through a multi-decade ordeal in assisting a family member (also a doctor) who was in a nearly identical situation as you. There was NPD, but also comingled with addiction (substance), mood disorder, and bipolar. It was pretty difficult to sort out, but that person is doing much, much better now. Of course, this is all routed in childhood trauma, so it may be helpful to do some basic reading on that:

Learn what your triggers are, and mind them.

Finally, a really important concept is discussed by Ronningstam, which is often overlooked by even very good practitioners who understand narcissism quite well. It is the critical component of redirecting ego-drive into healthy behaviors; Understanding the difference between healthy narcissism vs. pathological narcissism. This is, IMO, the #1 reason why NPD, pathological traits thereof, and addiction treatment fail so often. She discusses this very well in other parts of her book.

Of course I could be completely wrong, but that's my opinion, for what it's worth. As I mentioned, if you start digging, stay honest, and it starts resonating (good or bad), you're probably on the right path.

Good luck.

u/mpizgatti · 2 pointsr/INTP

The people here commenting, many don't seem to have any first-hand experience with this philosophy. It's similar to those who talk out of their ass about modern Satanism or anything else they don't understand but is associated with "bad" or "taboo" imagery. Buy into the hype and bandwagons and you don't have to actually research and think, how convenient.

The better place to start? and Not as many "seasoned" posters or authority figures of the movement. It is hilarious to me, some of the comments I see below mentioning "controlling" or "manipulative" as keywords. Controlling is furthest from the truth. Now there are some in the PUA movement where the employ high usage of Dark Triad traits ( which are of course meant to be manipulative or "harsher" but that's not the norm.

You'll notice that every focus in the MarriedRedPill Sub is ALL about self improvement. It's not manipulation, it's becoming the opposite of needy. Becoming "outcome independent" so that you aren't hinging on expectations of what the other person will do. The goal is to be masculine, strong, and assertive. To be so self assured that you CAN allow someone else in without scaring them off with needy beta behavior. That's it. The idea (and it is a philosophy, you don't have to identify with it) is that we are evolved in this way. The majority of women who want happy marriages are going to do better in a SLIGHTLY submissive role. Submissive doesn't mean lesser, or worth less or any other feminist garbage of the modern age.

The MarriedRedPill Sub really illustrates a captain/co-captain relationship. The idea is that men are leading their lives and a great woman for you will support that and support your mission. They don't process information the same way and DO NOT want to be included in every little thought you have. They want to see you succeed and that fulfills their purpose. They are turned on by your confidence and self assurance. That comforts them. Provides security.

I think the issue is that we are here on INTP. I'm reading through this book now: and I have to tell you.... the majority of the people on this sub fall into this kind of male. That book and this one other will change your life and attitude if you follow the guidance and advice within. It has ZERO mention of red-pill, just psychologists talking about counseling and assertiveness and not being the "nice guy" anymore. It is helping me a lot and I recommend both.

It's not PC to say that women and men are different. Humans are different. Even the races are different in predictable ways. It doesn't mean that they don't all have the same potential or that they should have less opportunity. However, we cannot equalize outcomes. That is up to the individual.

u/Ryngard · 4 pointsr/DnD

I HIGHLY recommend you purchase the D&D 5e Starter Set and run that. It is $12 on Amazon and if you dislike D&D then you aren't out anything.

I HIGHLY recommend you play 5e. 3.5e was a great edition but it is dated and the sheer volume of rules supplements (some of which are hard to find) are overwhelming. By the end it was out of control. It really isn't a new players w/ new DM system to be honest (HUGE fan of 3.5e, prefer 5e).

You DO need a DM. The role of the DM is different and more involved than the players'. You have to plan the adventure (in case of the Starter Set you should read the adventure and rules booklet cover to cover). You generally are the one players look to for rules clarifications and teaching. Its a very rewarding responsibility. Remember, you are not playing AGAINST the players. It isn't DM vs Players. You are facilitating their adventure and working with them to craft a fun story balanced with fair rules arbitration (and gnarly combat!).

Again, get the Starter Set. If that goes well, get the Player's Handbook (I suggest 2-3 copies to share, or have everyone get a copy) and the Hoard of the Dragon Queen adventure. Run those. If that works well enough to continue, then invest in the Monster Manual (and the Dungeon Master's Guide will be published by then) and go crazy!!!

I have run LONGTERM campaigns in every D&D edition and have had just as successful games with and without the grid/map. You do NOT need it. It can be helpful, especially for visual players, but I find it also really slows down the adventure. Detailed notes to backup detailed descriptions with a focus on "close enough, keep the game moving" is far more fun and engaging than spending 30 minutes to map out the most optimal movement for one round of combat. In 5e most combats are like 15 minutes or less, in D&D 3.5e for instance we've had 4 hour battles and it was just annoying.

But to each their own. You can also sketch on paper/graph paper and go from there.

Start CHEAP, don't invest in hundreds of dollars of stuff without knowing if you like it. Remember the starter set is $12 and the Basic D&D rules are free. :)

u/Remorc89 · 4 pointsr/Dungeons_and_Dragons

The best way to learn is to get a group and start playing! But I assume you want some more meaningful information than that...

You can purchase and look through the players handbook (PHB). It has everything from character creation to combat rules, traveling on mounts to buying gear, and everything in between. Most groups expect you to have one of these, but it might not be worth the cost until you decide you want to get into D&D. You can pick one up at one of the links below.

Alternatively, you can pick up the starter set. It is much cheaper and has a subset of the rules in the PHB. It also comes with an adventure and material for the dungeon master (DM). I have also provided a like to it before as well.

As for finding a group, there are lots of options. I would say it is probably easier to find a group online, but much more rewarding to find one in person.

For online play, you can check out You can probably find a game there pretty easily, although most groups will expect you to have a copy of the PHB.

As for finding a group locally, you should check out your friendly local game store (FLGS). Most that I have seen run the D&D Adventurers League (DDAL). I provided a link below that will explain the DDAL better than I can.

I know you said you aren't very social, but I wanted to throw out the option that you could create your own group! Find a few friends that are interested as well, grab a campaign or create one, and start a group! If you decide to start a group though, expect to be the DM. But that shouldn't scare you. Matt Colville has done some excellent YouTube videos about DM'ing and how it shouldn't be scary. You can do it!

If you have any questions you are not comfortable asking reddit, feel free to pm me!


Starters set:


u/dougiefresh1233 · 5 pointsr/DungeonsAndDragons

First off you'll need to pick an edition you want to play. Most people reccomend 5th edition (also called 5e) to beginners since it is the simplest to learn and has the most support online.

Then you'll need to learn the rules. There's a free basic rulebook that you could start with if you don't want to spend money, or you could shell out $30 for the Player's Handbook for the complete set of rules. The only thing the basic rule book doesn't have is a few of the player races and classes so you won't miss out on too much if you go the cheap route. Don't worry about knowing all of the rules but read the book over once and then read over your class abilities a couple times so you know them well.

You'll also need a set of dice. If you for some reason have a bunch of dice laying around, a complete set consist of dice of the following side counts: 20, 12, 10, 8, 6, and 4. You'll also need a percentage die also but you can also just use your d10 for that. If you don't have loose dice laying around then you can buy a set from Amazon or your local game store. You can also just use an online dice roller if you're concerned about money but physically rolling them is more fun and dice are cheap.

You can also buy the DnD starter set which comes with a basic rule book, a set of dice, and a book for a pretty good tutorial adventure that you could play with friends.

Speaking of friends, you'll need a group to play with. You can convince a group of 4 or 5 friends to play if you have them or you can play with strangers. A good place to meet strangers is on /r/lfg where you could either find a local or online game, or you could trot down to the local game shop which will probably have a weekly dnd night that welcomes beginners.

If you need help understanding the rules or making a character you can ask here or on /r/dnd /r/dndnext or /r/dnd5th

Good luck getting started, you'll have a lot of fun.

u/v3nturetheworld · 12 pointsr/cscareerquestions

well depends on what you want to learn. Do you only want to do webdev stuff or learn a ton about CS concepts? I'm going to answer in terms of learning CS stuff, but first here's a page on how to go from knowing nothing to knowing a wide range and depth of CS topics: you do this, you'll be a grade A software engineer!

OK, moving on. First the basics which it sounds like you've got covered.

  1. understand basic programming concepts (conditions, loops, functions)
  2. learn a programming language pretty well, it doesn't matter what language. Being good at and Understanding CS concepts does not involve mastering a single language... once you get the concepts any language will be easy to learn... It sounds like you know some Javascript (not my personal recommendation for learning CS concepts), personally I'd recommend Python (easy syntax, great resources, wide use, etc..)

    OK, now where it sounds you stand. Learning the Advanced stuff.

  3. Algorithms: The bread and butter of programming. There are many resources out there, if you want to buy a book, the gold standard is "Intro to Algorithms, 3rd edition ". Other than that, I'd suggest just the relevant Wikipedia article for algorithms. Take the pseudocode and implement it yourself in your language of choice. Understand what the algorithm is doing. Compare it to similar algorithms, understand why/when it's better or worse.

  4. OK, now that you've got that done, you can start making more complicated stuff. Come up with some silly or interesting real world examples to practice with. I suggest at this point learning more about Object Oriented Programming... learn about Classes, class structure, generics (this all varies by language). Practice, practice, practice. 4 hours of coding a day if your not doing anything else, spend the rest researching/reading.

  5. Learn how to use Unix/Linux. it's good for you(tm)

  6. optional but cool: Learn about Computers structures and how operating systems work, bonus points if you want to build a basic OS from scratch (this requires learning a systems language like C/C++/Rust and some assembly).

    anywhoooo that's kind of an overview/recommendation... feel free to ask any more questions/clarifications/suggestions for resources.
u/WanderingJones · 1 pointr/socialskills

Yeah I would just ignore these guys.

The way I would look at this is you have two choices. Option 1 is to learn to live with the situation (maybe just temporarily), option 2 is to work on it.

For Option 1 I would recommend cognitive behavioral therapy (try reading Feeling Good). CBT is a good way to help align how you think with what you logically believe. Like MackNoir said, there really isn't a good reason to give a shit about what other people think, but the techniques in that book can help you actually think that way.

Also I would try meditation (see /r/meditation and Mindfulness in Plain English, a free book). Meditation is a great way to help you stay grounded and focused on the present (which includes not worrying about issues like you're talking about here).

For Option 2 you really just have to make an effort. If you want to feel like you're contributing to people's lives, invite them to things, offer to help people when the opportunity comes up, and volunteer. To make conversation easier, do things like read the news, learn about things that interest you, try a lot of different things and pick up hobbies. Also remember FORDEN for easy topics (Family, Occupation, Recreation, Dreams, Environment i.e. your surroundings, and News). Those things along with being a good listener, conversation threading (google it), and practice should make conversation easy.

But obviously some of those things require some time. Like Jing-Jack said college will be different and you should have a lot more control over what you do with your time then (assuming you move out).

u/cube-drone · 1 pointr/programming


  • What was your major in college?: Computing science.
  • What was your career/vocational journey like once you graduated from college?: Turbulent.
  • How did you prepare for entry into your profession?: Co-ops, reading dozens of articles and books about how to be a programmer.
  • How did you locate & secure your current job? : Twitter, surprisingly.
  • What specific degrees or experience is necessary for this kind of work? : "Be a good and unusual programmer." CS degrees are always helpful but not necessarily requisite.
  • If you were to redesign your college experience what would you do differently? : One time I took Software Engineering II instead of Algorithms II, and I still regret it. Universities don't do practical stuff well.


  • What is a typical work day like for you? Tasks throughout the day?: Shower, commute, standup, lunch, coffee, programming, commute, take-out, draw comics, watch TV with girlfriend.
  • Do you have opportunities for varied schedule, such as telecommuting; flex time, or job sharing? : Yes.
  • What are the most interesting or challenging aspects of your job?: I learn new things all of the time, because I've never worked in a job where I have to maintain cloud infrastructure or work with mobile devices.
  • What are some of the difficulties and frustrations of your work?: Maintaining cloud infrastructure, working with mobile devices.
  • What are the most significant changes facing your field/organization?: We're getting bigger, fast, and we're not sure how to attract good talent, filter out bad talent, and keep things from becoming a bureaucratic nightmare.


  • What experiences would you recommend I have (coursework, internship, volunteer, campus involvement, etc.) to prepare for a job in this field? : I could answer this ALL DAY. Get a CS degree, it's good for you. Don't do unpaid internships, it's bad for everybody. Try to get a commit into an open-source product that you think is cool.
  • What does it take (personality traits, strengths, and competencies, experiences) to be successful in this field?: If you're in any way different from the herd of young white males, you need an incredibly thick skin and a lot of personal resolve, and you're going to deal with a metric tonne of stupid entitled bullshit from people who have really only ever learned computers and little to nothing else. If you're young and white and male, uh... you're pretty much set, but try to be kind to others.
  • What do I need to have on my resume to be considered for employment in this field?: Programming languages. No food stains.
  • Can you recommend resources that offer helpful information about the field? : CodingHorror, Joel on Software,
  • What are some related occupations that I might investigate? : Tech Writer, DevOps/Sysadmin, Data Analyst,
  • What professional organizations would you recommend? Publications to read? The ACM releases some surprisingly good magazines. I like Linux Voice quite a bit, too.
  • What specific advice would you give a person entering the field? Be kind to others. Don't believe in the meritocracy. Socialize with your peers. Join the student society.
  • Can you provide me the names of two or three other people in this field who might talk with me and provide additional information? May I use your name? : No.
  • Would you be willing to review my resume if I emailed it to you? : Probably not?
u/frostmatthew · 3 pointsr/WGU

tl;dr version:

  1. yes
  2. no, but that will be the case at any school

    Quick background to validate the above/below: I was a 30y/o banquet manager when I decided to change careers. I had no prior experience [unless you want to count a single programming class I took in high school] but did get a job in tech support at a medium size startup while I was in school and wrote a couple apps for our department. Just before I graduated I started working at a primarily Google & Mozilla funded non-profit as their sole software engineer. I moved on after a little over two years and am now a software engineer at VMware.

  3. The degree is a huge boost in getting past HR and/or having [good] recruiters work with you. You'll also learn the skills/knowledge necessary to get hired as a developer, which is obviously the more important part - but for the most part this is all stuff you can learn on your own, but you'll greatly reduce the number places that will even give you a phone screen if you don't have a degree [I'm not saying this is how it should be, but this is how it is].

  4. I typed out a lot before remembering New Relic had a great blog post a few months ago about all the stuff you don't learn in school [about software development], ha. So I would highly recommend you not only read it but also try to learn a little on your own (especially regarding SQL and version control) Being a good developer (or good anything) takes time/experience - but knowing what they don't cover in school (and trying to learn it on your own) will help.

    Two books I'd suggest reading are The Pragmatic Programmer and Code: The Hidden Language of Computer Hardware and Software. Pragmatic Programmer is one of those classics that every good dev has read (and follows!). Code is great at giving you some insight into what's actually happening at a lower level - though it gets a bit repetitive/boring about halfway through so don't feel bad about putting it down once you reach that point.

    The best thing you can do to help you land a job is have some open-source side-projects (ideally on GitHub). Doesn't have to be anything major or unique - but it will help a lot for potential employers to see what your code looks like.

u/parakeetpoop · 3 pointsr/booksuggestions

You sound EXACTLY like me. It's always hard to live like we do, and I'll give you some book recommendations, but I want to give you some pointers too that have basically kept me alive.

I saw so many therapists who did next to nothing for me. I ended up committing myself to a 100% voluntary psychiatric hospital. Everyone was basically in the same boat; we weren't crazy but we weren't healthy either. The treatment plan that they gave us was based on Dialectical Behavioral Therapy, which is I guess somewhat new. It's meant for borderline personality disorder, but as someone who has PTSD, general anxiety, and clinical depression, I would HIGHLY recommend any books or workbooks or videos you can find on it. I like it because it helps you treat yourself rather than making you dependent on therapists, etc. It's all about reshaping the way you think and the way you handle certain situations. It's the best thing I've ever found that helps (and I spent 15 years in near-useless therapy before that!)

I also found that reading people's memoirs and even some fiction books really helped as well because they reminded me that I wasn't alone. See, it's hard with mental health because it's not like any other "diseases" that you can see. I think we often feel alone because it's so hard to tell when somebody is like us since depression and anxiety aren't conditions that are readily visible to the human eye. It's a sneaky illness that creeps up on you like a parasite and getting it to go away is a process, but it's still possible.

Just think about any positive thing you can, and don't let yourself find cons to it. There may always be negative aspects to things, but there are almost always pros as well. No matter how you feel, there's always somebody out there who could use your help. If you're feeling really bad, try volunteer work. It helps me sometimes. Also try going outside your comfort zone with things. Give yourself a thrill and discover something new that you can enjoy. I know it's hard to get the motivation or energy to do anything like that when you're depressed, but you have to force yourself. (It's called "opposite to emotion action" in DBT. Life saver.)

Anyway, here are those book recommendations:

u/mearkat7 · 4 pointsr/webdev

I'll preface this by saying i've done a little bit of hiring and helped my boss look at candidates so i'll try to explain why interviews might not be coming your way.

Also be wary that i'm bias. I don't really understand the idea of a "boot camp"; You can't leave your job and become a teacher or a lawyer in 6 months, why is a developer different? I guess it just seems a bit offensive to just assume that the field has such a lower barrier to entry that you need next to no training to be work ready.

Ok rant over.

Some tips/advice:

  • Go to meetups. Whether it be a nodejs or an express meetup find what is happening in your area and do your best to get along. You'll meet people and build up a bit of a network which will help gain some respect even if it's within small circles. Many of the people will have jobs and might be able to hook you up
  • You currently don't get interviews because you're easy to discount from a list. If a business gets 20 applicants an easy way to narrow down is by degree/experience. As somebody without either you're just culled while the list is narrowed down so you probably never get past that first step. That's why the above is vital. Also if you're rejected somewhere try to find out why, follow them up and see if you can improve yourself. I know many people who've done comp-sci/programming at uni for 4+ years and still can't get a job, you're going to need to work hard to get ahead of these people
  • Reason 2 people won't give you an interview is you're a big risk/investment. To get you where up to scratch in tech they're going to need to invest time in you, get you mentored, train you and help you which is $$$. The fact that you've dropped your previous degree and done a 6 month course I know my boss and I would raise a red flag at, how do we know you won't get bored in a year and after all the investment you just leave? Not saying you are like this at all but trying to explain what goes through peoples heads when they look at you
  • Not sure what jobs are like in your area but it's probably worth looking at what tech is popular. Is C# the king of your area? Learn C#. Is python the most popular stack? Learn python. People get too caught up in trying to use something cool and current rather than something that will be useful. You can write beautiful code in any language.
  • Read some good books. Most people have done a 3 year degree at uni to get to your position so in some aspects you'll be massively behind. Reading something like clean code(best book i've read on development) will help you get up to speed. Understanding how to get requirements is as important as being able to write the code.
  • Make sure you're applying for the right positions, again I have no idea what you're looking at but you need to be looking as low as possible. Anything without the word junior in it they'll write you off instantly. Call some businesses and see if you can find out what they look for in a junior, maybe they like seeing more side projects etc.
  • Contributing to open source is often a good idea, while some people hold it up as all important I think it's just good as it shows you can work with others and understand the idea of getting issues/features done and have the ability to come into a library/application and understand it enough to contribute.

    Portfolio critique:

  • Nowhere does it mention what sort of job you are after(unless I missed it)? It just launches into name then skills, having something like "developer" or "web developer" I think would help me
  • Skills are way too saturated, you can probably remove all the browser images, i'd take away ajax, and depending on your target audience html/css. If you call yourself a dev and can't do html/css you're not worth looking at
  • Personally i'd put a contact form on there, you say "be the next chapter" but don't give me an "easy" way of getting in touch with you, drop a form in so I don't have to do more work
  • All your projects look like assignments from your course(they might not be). I'd try to diversify those because I just assume when I look at them you've had help or have not actually done it yourself and is something i'll often question with our applicants
u/Drcool54 · 5 pointsr/UIUC

Okay I came in to school like you with very little programming experience. Probably even less than you since I only messed around on my TI. I am going to assume you're only taking ECE110 first semester. If not I recommend getting in as soon as you can. They may give you some crap about it depends on last names, but it doesn't really matter. After a certain point its open to everyone.

Either way, programming in ECE doesn't really start until you take ECE190 which is all C programming and a very simplified assembly language for educational purposes. Like I said I went into the class with practically zero programming experience and still did very well in the class, so don't let anyone scare you on that. If you put the time aside to read the book (really helpful in 190) and doing your MPs/ask the TAs questions you will do fine.

I wouldn't fret too much over the summer with learning stuff, but I would definitely recommend C over Python. Python is pretty easy to pick up, but its also very high level. If you need an introductory language to get familiar you can try python for a bit, but I'd go with C after that. It is worth noting that the other two required programming class you have to take (CS 225 and ECE 391) are C++ and C/x86 respectively. So learning C should definitely be your focus.

I recommend the book written by the creators of the language. The book the school requires is pretty good too actually and would give you a better idea of what to expect. They're kind of pricey, so its your call how you want to get them. As a heads up, codecademy does have Python, but not C as far as I recall. I've never used lynda do I can't comment on them C Book ECE 190 Book

I honestly wouldn't fret too much about it all. Enjoy your summer, depending on how busy your schedule is next semester you can probably set aside some time now and then to study some languages. If you have any more questions I'd be happy to answer.

u/YuleTideCamel · 162 pointsr/learnprogramming
  • Clean Code is a really good programming book. It's technical in that it gives you best practice, but you don't need a laptop or to code to follow along, you can just absorb the information and follow along with the simple samples (even if it's not your primary coding language).

  • The Clean Coder is a great book about how to build software professionally. It focuses on a lot of the softer skills a programmer needs.

  • Scrum: The Art of doing twice the work in half the time is a great introduction to scrum and why you want to use it. Agile (and scrum in particular) can have a major improvement on the productivity of development teams. I work for a large technology company and we've seen improvements in the range of 300% for some teams after adopting scrum. Now our entire company is scrumming.

  • Getting Things Done has personally helped me work more efficiently by sorting work efficiently. Having a system is key.

  • How to Win Friends and Influence People I often recommend devs on our team read this because it helps with interpersonal communication in the office.

  • Notes to a Software Tech Lead is a great book so you can understand what a good lead is like and hopefully one day move up in your career and become one.

u/gwhlives · 2 pointsr/ADHD

So I guess for me the first step was just sort of coming to an understanding that drinking really isn't adding anything, but that it is taking so much away... and just listing all of those things, like verbally or in pen or something, because what happens is you realize how often you are making the same stupid mistakes... Like once you have said it allowed or written it down, every time it happens you have to acknowledge that it also happened yesterday, and the day before, and it was really bad the time before that... It was just getting exhausting.

So I just was getting so tired of it, like it sounds like you are, so I set a date. Didn't make any changes in the mean time, was still drinking, still saying yes every time somebody asked me if I wanted to go out, still kept doing the "just one more" dance, carried on with the daily hangovers etc... but I had my date set and for a full month it got to the point where I just couldn't wait to reach the date, I was so ready for it.

In the interim, I read a couple of books about neuroplasticity and habit formation that I found really helpful. If you only read one book, my suggestion would be The Power of Habit, but I also read Rewire Your Brain which was also super helpful, and I just ordered "The easy way to stop drinking" which is linked in the sidebar at /r/stopdrinking, so we'll see what that has to say.

So I guess what I have been doing is really just focusing on the positives, because I was just getting so so tired of the bullshit and I had this image in my head of what I want my life to be like when I get to a point where the urge to drink isn't constantly in my head. So, with a several page long list in hand of all the little triggers, and a really really really long list of reasons why I wanted to do this in case I forget, the day finally came and so I told my family what I was doing, and decided to start working on all the things I was excited about, like books and hobbies and stuff. Apart from the hangover that day I was pretty excited...

Unfortunately, it didn't go well to start because I didn't sleep a wink for days, so I was in really, reeeeally bad shape, but truthfully I had prepped my head for enough time that the desire to go back just so I could get some sleep wasn't unmanageable, especially because I know that if I drank I'd just have to go through the bullshit all over again... So now it's been almost a week, I'm kinda starting to function again normally, and I'm feeling so much better than I have in a very long time already, even though I still haven't slept well still... I also went to buy coffee yesterday and I thought "I better check my checking account balance, I don't want my card to get declined here AGAIN..." and I was pretty shocked to see I had $80 in there, that never happens by this time of month... So I'm just focusing on these awesome little changes as much as I can, every positive little change or occurrence I make a point of paying attention to so that I don't lose momentum...

Also, posting at /r/stopdrinking every day has been super helpful because my brain is running like 1000 miles per hour faster than usual, so it is super helpful just unload there, and somebody responds every time within minutes.

u/phao · 1 pointr/cscareerquestions

> Okay, that makes sense. For clarification purposes, is a spec the documentation?

Languages generally speaking have a documentation which specifies itself. That's the spec for the language. Someone interested in creating a compiler, interpreter, or some sort of analyzer, and so forth for the language needs to know how the language is supposed to work. The spec is the document which talks about that in detail. It's like the official documentation if you will.

> And just to make sure I'm interpreting it correctly, do you mean that because Scheme (at least R5RS) had a small pool of reserved keywords and special forms, it made it minimalist, while languages like Clojure and Haskell allowed the programmer to have a wider range of tools at their disposal?

"Minimalist" is not very exact terminology. It means the language has a small set of concepts and things that you can use. The nice thing about scheme is that from this small set of features, you can do tons of stuff. It usually implies a small set of keywords, but that's not just it. Generally speaking, it has a small features set, which isn't very exact terminology either.

> Do you think your previous experience (the C-based DS&A course and the PHP web dev) help you get through SICP? Or was that knowledge independent of what was taught in SICP, and didn't really apply?

These weren't courses per se. I did this before getting into college. The C programming I was talking about came from K&R2 ( and looking things on the web. I think it helped. Not sure how much. I don't think the PHP web dev helped.

> Would you recommend anyone to take any sort of background/intro course (e.g. the MIT 6.00 intro course, perhaps) before delving into SICP?

I have no clue what is the better choice in here. Try both at the same time? I think MIT 6.00 even uses "how to think like a computer scientist" (the book I mentioned before).

> I think I might take a look at that. Is it meant to prep students for SICP even though it's taught in Python? Or is it meant as a general introduction to programming?

Both. It's meant as an introduction to programming and computational problem solving. In one of the lectures I think the professor talks about how people do better in SICP if they take this course before.

> I only ask because each language has its own paradigm, so I don't know if one's knowledge of Python would transfer well or apply well to SICP/learning Scheme. You can of course implement objects in Scheme, and do other OOP-based things, but it's not as laid out or simple as it is in Python, from my experience at least.

That is true, but there is more to it than that. Each language has its ways of doing things. When people are making new languages, they're highly influenced by other languages. To the point that most languages I've seen have nothing new but a few pieces, and most of everything else is just a "rehash" of ideas from other languages. Generally speaking, you'll see a lot of commonalities among several languages. It is true that each language has its style, but that style shares plenty in common with other styles from other languages. There will be things in common, and very rarely stuff you learn in one language won't help you in another language.

Even though the way you program in python will be different from the way you program in scheme, there is plenty in common.

In the end, you'll have a bag of cohesive programming techniques. That's not really language dependent as much as some people will tell you. Languages aren't that important as far as I can tell. I remember, back when I was starting to learn how to program, giving real importance to programming languages. Maybe they are really important, but it doesn't seem to me like they are anymore. The programming techniques and ideas behind them are though. The language is just a "conduit" by which you apply those techniques to solve problems, which has its importance but it's greatly exaggerated by most programmers if you ask me. In fact, in SICP, you'll end up learning that a way to make problem solving more approachable is to make a language that is a better means to apply the programming techniques that you think help in solving the kind of problem that you want to solve.

Nowadays, some languages are nice enough that you'll be able to do that by just cleverly designing a new library or framework. Making new languages is still valuable though, and in my opinion, underrated.

> Truth be told, though I am younger and wasn't around for when CS was emerging [...]

I didn't see it emerging either. I started to study programming and CS in 2006 (I think). All I've said is based on "stories" and reads that came up while I was reading books, reading blog posts, talking to people, etc.

u/HalfBurntToast · 3 pointsr/MyLittleSupportGroup

Well, I'm no doctor, but I've studied and practiced CBT for years. I'll link some guides and books below that are pretty good. But, essentially, CBT is all about paying attention to what you say to yourself and working to change it. What you say and think about is like a habit: you've been doing it for so long that it's become rather 'default' behavior. But, like a habit, it can be changed with enough time and work.

One of the very first steps in doing this is becoming aware of what you are saying. For example, like in the title of the post, when you call yourself a moron. Or the lines of thought, such as your friends leaving you. This is a major step because, for a lot of that self-talk, you probably aren't aware of it or your brain 'filters' it out, but it's hurting you anyways.

The next step is to start challenging what you say about yourself rationally. Try comparing them to this list. For example, when you have a fear about your friends leaving you, the first thing you should do is ask yourself why. Why would they leave you? What did you do? Then look at your answer and compare it to that list. Chances are that what you're afraid of is either unlikely or illogical. It can help a lot to write this stuff out on paper.

Another test that I like is to imagine that you're saying your 'self-talk' to someone else. Imagine you had a friend you really liked and trusted completely, they can be real or imaginary. Now imagine that friend is calling himself a moron or is saying that he's afraid his friends will leave him, or whatever self-talk you're giving yourself. Would you agree and call him a moron or say his friends will leave him (remember, you're supposed to really like this person)? I would guess probably not. It would just make him feel worse, right? What's important with this test is to realize is that that is exactly what you're telling yourself and it's making you feel just as bad.

After that, it's a game of watching what you think and doing the above until it becomes less of a problem. So when you call yourself a moron, you never let yourself get away with it. You ask yourself: why am I a moron? Why does X make me a moron? Aren't I allowed to make mistakes? Etc. Eventually, you'll start to become nicer to yourself and treat yourself like you would that good friend from above.

Feeling good by David Burns is pretty much the go-to, raw CBT book. It has a lot of worksheets and examples to help the reader. I highly recommend it, especially if you're just starting.

Overcoming Social Anxiety and Shyness by Gillian Butler is also a good book that focuses in more on social aspects.

Most of the online guides I've seen haven't been too fantastic IMO. But they do exist. This seems like a good overview, but definitely not as interactive or comprehensive as the books are. Personally, I'd start with David Burns' book. It's probably the most tried-and-true of them all.

u/bhrgunatha · 6 pointsr/AskComputerScience

A famous artefact of early computing is the boot-strapping process where the goal is a self-hosting compiler - which lets you write the compiler for a new language in the new langauge. However to get to that point a lot of earlier innovations were needed.

Take all of this with a pinch of salt - the order and the details may be wildly inaccurate, but the overall ideas viewed from afar give an idea of how we got to the point that we can choose our own language to write a compiler for another language..

To start with, raw binary values had to be set in order to define and run a program. Those raw binary values represent instructions that tell the hardwaer what to do and data that the program needed to operate. This is now usually referred to as machine code.

At first you would enter values into computer storage using switches.

Since that's so tedious and error prone, puched cards were developed along with the necessary hardware to read them so you could represent lots of values that could be read toagether. They had their own problems but it was a step forward from switches.

After some time symbolic instructions were defined as a shortcut for several machine code instructions - now usually called assembly language. For example put the value 8 and store it into a memory location 58 could be written as ST 8, [58]. This might take 3 machine code instructions, one represents the store instruction, one the value 8 and one the location 58. Since now assembly language could be written down it was easier to understand what the computer is being instructed to do. Naturally someone had the bright idea to make that automatic so that for example you could write down the instructions by hand, then create punched cards representing those instructions, convert them to machines code and then run the program. The conversion from the symbolic instructions to machines code was handled by a program called an assembler - people still write programs in assembly code and use assemblers today.

The next logical step is to make the symbolic instructions more useful and less aimed at the mundane, physical processes that tells the computer exactly how to operate and more friendly for people to represent ideas. This is really the birth of programming languages. Since programming languages allowed you to do more abstract things symbolically - like saving the current instructions location, branching off to another part of the same program to return later, the conversion to machine code became more complex.Those programs are called compilers.

Compilers allow you to write more useful programs - for example the first program that allowed you to connected a keyboard that lets you enter numbers and characters, one connected to a device to print numbers and characters, then later to display them on another device like a screen. From there you are quite free to write other programs. More languages and their compilers developed that were more suitable to represent more abstract ideas like variables, procedure and functions.

During the whole process both hardware - the physical elctronic machines and devices and software, the instructions to get the machines to do useful work - were both developed and that process still continues.

There's a wonderful book called Code by Charles Petzold that details all of these developments, but actually researched and accurate.

u/random012345 · 1 pointr/learnprogramming

Books on project management, software development lifecycle, history of computing/programming, and other books on management/theory. It's hard to read about actual programming if you can't practice it.

Some of my favorites:

  • Code: The Hidden Language of Computer Hardware and Software - GREAT choice I notice you already have listed. Possibly one of my favorite, and this should be on everyone's reading list who is involved in IT somehow. It basically how computers and programming evolved and gets you in a great way of thinking.

  • The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography - Another great history book on code and how things came to be. It's more about crypto, but realistically computing's history is deeply rooted into security and crypto and ways to pass hidden messages.

  • Software Project Survival Guide - It's a project management book that specifically explains it in terms of software development.

  • The Art of Intrusion: The Real Stories Behind the Exploits of Hackers, Intruders and Deceivers - A fun collection of short hacking stories compiled and narrated by Kevin Mitnick, one of the most infamous hackers. Actually, any of Mitnick's books are great. Theres a story in there about a guy who was in jail and learned to hack while in there and get all kind of special privileges with his skills.

  • Beautiful Data: The Stories Behind Elegant Data Solutions - Most of the books in the "Beautiful" series are great and insightful. This is one of my more favorite ones.

  • A Guide to the Project Management Body of Knowledge: PMBOK(R) Guide - THE guide to project management from the group that certifies PMP... boring, dry, and great to help you get to sleep. But if you're committed enough, reading it inside and out can help you get a grasp or project management and potentially line you up to get certified (if you can get the sponsors and some experience to sit for the test). This is one of the only real certifications worth a damn, and it actually can be very valuable.

    You can't exactly learn to program without doing, but hopefully these books will give you good ideas on the theories and management to give you the best understanding when you get out. They should give you an approach many here don't have to realize that programming is just a tool to get to the end, and you can really know before you even touch any code how to best organize things.

    IF you have access to a computer and the internet, look into taking courses on Udacity, Coursera, and EDX. Don't go to or pay for any for-profit technical school no matter how enticing their marketing may tell you you'll be a CEO out of their program.
u/g1i1ch · 1 pointr/explainlikeimfive

I'm going to go against the grain here with my recommendation. I'm a guy who was in a similar position years ago. I've since transitioned from web development to game programming and have working knowledge of 7+ languages.

Dude, don't sweat these feelings you're having. You're just at a wall. We all reach different kinds of walls in this career and they're really the best thing ever. It means you're about to jump ahead in skill by at least 10x. You just got to find the trigger for it. Be patient and try different things. Go check out Udacity and do some courses on there. Also this is the time to start reading books. Not just any cheap book you find. Good books that will give you the perspective of an industry professional. Books like JavaScript: The Good Parts, Code Complete, The Pragmatic Programmer, or The Little Schemer. Also it doesn't matter what language the books are in to enjoy it. 98% of all programming languages are the same anyways, which you'll soon learn. For the most part, they just have moderately different ways and syntax to do the same thing.

I would recommend not switching platforms from the web. One of the most important skills guys like us can have is seeing where technology is heading and betting on the right horse. It's very clear that webapps are going to be even more important in the future. You can already make desktop apps with web technology naively in pretty much all major OSs now.

I say learn JavaScript front and back. Read JavaScript: The Good Parts and JavaScript: The Definitive Guide cover to cover. Once you learn JavaScript it'll be very easy to transition to any C-based language, which is most of them. In fact I credit JavasScript for giving me the basics to jump to just about any language comfortably and pick it up in a few weeks.

After that, learn a good server side language like Java, Python, or C#. (C# is in very high demand, and has many applications) Or learn all three and you'll be very well positioned career wise. Well, make sure to get some experience with SQL too for good measure.

Also if you want to have a good challenge instead of being bored on those easy things, like drawing shapes, why don't you try Udacity's fine WebGL course? Jumping in the deep end isn't bad as long as you don't expect it to be easy.

u/ColdIceZero · 3 pointsr/TheRedPill

Much of my research has been focused on men who grew up under an emotionally abusive, narcissistic female parent ("Nparent"). Boys with high levels of intelligence who grow up under these conditions develop defense mechanisms to avoid the irrational, and often unpredictable, wrath of their Nparent.

One of these defense mechanisms is a highly developed sense of empathy, or in other words "the ability to understand and share the feelings of others." Children from abusive homes often develop higher-than-normal levels of awareness for other people's emotions as a survival response; because while growing up, a child's well-being was determined by the emotional state of the Nparent, whose mood and behavior could radically and unpredictably shift without warning or provocation. So, these children learn how to observe their Nparent and be aware of their every-changing emotional state at all times.

There are a couple consequences of this. First, many of these children learn how to interact with other people in a disarming way. These sort of children do very well in professional sales environments because they have an advanced ability to "read" people.

Which leads me to a second consequence: primarily being in a state of reaction to other people's actions. If life were a game of chess, you would be black, always reacting to white's first move. Again, as a defense mechanism, children in abusive homes learn strategies to disarm or satisfy their Nparent. Since the Nparent is always on the offensive and the child is always on defense, everything the child is trained to do is counter, repel, or otherwise disarm the actions of others. And these children can become very well adept at developing strategies to anticipate the needs of others.

So while the bulk of these boys' training is as a reaction to the wants and needs of others, these boys are not taught how to be in charge, how to identify and exert their own wants and needs in a relationship in a healthy way. In every relationship, there is a leader and there is a follower. Your relationship training growing up has always been to be reactionary, to be a damn good follower because your survival depended on it.

Now, you are dating, and women are looking for a leader in the relationship. The problem is that you don't have any training on how to be a leader in relationships. Like a fish in water, your whole world growing up has been focused on being the best survivor you can be, and that has meant being the best listener, the best reactor, the best follower you can be because you never knew what it meant to be in control.

Shifting gears into being on the opposite side of that fence, by being the person whose Will is exerted instead of being the person upon whom someone else's Will is exerted, is difficult. It's like riding a bike for the first time: no matter how many books you read on riding a bike, you're still going to fall the first few times. Becoming comfortable as a leader in a relationship is learning experience. It takes time to explore what that means for you and what that means to the women who follow you.

Diving deeper, if you grew up in this sort of environment, you know what it means to be taken advantage of; you've seen what it means for a person to manipulate some unsuspecting individual into fulfilling the manipulator's desires. Like a used-car salesman, you may view the whole experience of "using your magic" to get other people to do what you want as coercive, as something negative. You feel bad because maybe you feel like you're taking advantage of these women; and knowing how badly it sucks to be taken advantage of, you feel uncomfortable escalating things because of it. You haven't necessarily been so accommodating to others because you wanted to, you've done it as a means of survival, because you've had to in order to avoid punishment. You can't fathom or haven't considered the reality that there are people out there who genuinely desire to support others, not out of a sense of avoiding pain but because they truly feel a desire to support the fulfillment of someone else's Will.

If any of this applies to you, then here's my advice: first, recognize that you've been playing the part of the follower in relationships. Your approach has been reactionary, to anticipate the needs of others in order to satisfy those needs, as you feel a good partner should. The problem with this approach is that it requires the other person to have definitive needs. If they don't have needs that can be defined, then you won't know what to do; and nothing you do will satisfy them.

This might explain some issues you've had with LTRs in the past. There's the ongoing joke that if you ask a woman "what would you like to have for dinner?," her response is ____. You already know the stereotypical response (it's "I don't know", if you didn't already guess). While publicly men will lament about female indecisiveness, TRP explains that women aren't interested in making the decision about dinner because they've already made the only decision that matters: they chose you. Now, it's your job to decide what's for dinner; it's your responsibility to figure out what you both are doing tonight; she depends on you to take the lead. And since she's waiting for you to exert your Will, she often doesn't have definitive wants to satisfy. This may very well be the reason why you kept expecting insight from previous LTRs on what you should be doing for them, all the while they were becoming frustrated with you because you were not exhibiting the very same indicators that you sought from her.

Second, you need to learn how to be a leader in relationships, learn how to be in control. There are strong, positive leaders and there are shitty, negative leaders. Realize that exerting your Will in a relationship is not inherently bad thing. There are ways to do it positively. Women seek this strong leadership in relationships with a man. Just like you presently react to someone else to satisfy their needs, women desire to do that exact thing for you. So if you're not exerting your Will in a relationship, then your relationship with her will invariably fall apart.

So get over feeling bad about exerting your Will. Realize that a huge percentage of women desire to support the Will of a strong man. This desire is so ingrained that a surprising quantity of women admit to sexually fantasizing about being raped. This psychology tells us that even under what we might consider to be the most severe of circumstances (being raped), a situation that you would overwhelmingly consider to be "bad," many women still generally sexually fantasize about being "taken" and satisfying a man's Will by his force. By being a man who exerts his Will, you are quite actually giving women what they truly seek: a man who knows what he wants and ACTS on it. So in your chess game with women, be the white piece and make the first move; let them react to you, your desires, your Will. They want you to take charge, and you're hurting yourself and disappointing them when you don't.

Final thoughts, pick up copies of these two books: (1) "No More Mr Nice Guy" by Dr. Robert Glover, and (2) "Models" by Mark Manson. First read No More Mr Nice Guy.