• Breaking News

    Saturday, August 15, 2020

    I wrote a syllabus for learning Python and Django. Four people have gone through it, two are interviewing and one got a job. It's based on using a somewhat even mix of coding challenges, personal projects and books. learn programming

    I wrote a syllabus for learning Python and Django. Four people have gone through it, two are interviewing and one got a job. It's based on using a somewhat even mix of coding challenges, personal projects and books. learn programming


    I wrote a syllabus for learning Python and Django. Four people have gone through it, two are interviewing and one got a job. It's based on using a somewhat even mix of coding challenges, personal projects and books.

    Posted: 14 Aug 2020 03:31 PM PDT

    I've helped a few people become software engineers. The ones that learned the fastest used a mix of studying, coding challenges and personal projects. When you do all three of these things, they amplify each other. It also keeps you out of tutorial hell.

    Studying (tutorials/videos/books) are how you learn about new topics and get exposed to good code. Coding challenges give you small problems to implement what you've learned and compare your solutions to other people's. Projects let you put it all together and give you something to show off when you're done.

    I put together my favorite resources and then iterated on it by mentoring a few people through it. It seems to be working well. The syllabus is free and all of the books together would total up to a few hundred dollars (money very well spent IMO).

    It's set up in Notion as a non-linear path. You can copy the syllabus and then mark your progress as you go. You should have 2 or 3 things that are available to work on most of the time.

    Introduction

    Syllabus

    submitted by /u/TravisJungroth
    [link] [comments]

    Recovered addict looking for some advise.

    Posted: 14 Aug 2020 07:29 PM PDT

    First off I would like to clarify, I've done two 1 year courses at college about 4 years ago, one was technical support HNC (I live in the UK) and the other software development HNC. I have more interest in networking, at least the pen testing side of things is fascinating to me, so I jumped ships and and did a course more focused on that the second year. At the time I was using Xanax everyday and also heroin occasionally at the tome which became daily eventually as well. As you can imagine my memory isn't exactly great from that time period and eventually I ended up homeless. I think I dropped out of college before this and sold all of my possessions including PC's laptops ect.

    Now I'm in a much better place, have a decent thinkpad, built a half decent rig and would like fill the void with something I enjoy.

    The issue I'm having is I'm not exactly sure where to start. I still have a hard drive with some PowerPoints about IP which I plan on looking through. At the time I was using Linux exclusively for networking but now I run a windows 10 As I grew up using windows XP and earlier and being a bit rusty it's more comfortable to use. Even if the CLi completely different.

    I've installed the app "solo learn" and intend to brush up on my python, JavaScript and C++, SQL ect. I am struggling to find resources online for networking and since I no longer have any funding left to return to college I would like to just relearn this through either old notes on the HD I have or free online courses.

    What are the best programming languages to learn in 2020? Is SQL still relevant? I'm a bit lost and any advise would be really great. Thank you.

    submitted by /u/ginseng-tea
    [link] [comments]

    A different reason to learn: programming as a tool, not a career

    Posted: 14 Aug 2020 07:54 PM PDT

    Learn programming to improve your current job

    This place is a wonderful place to learn things. I, myself, have spent a lot of time here and have learned so much because of the community. I wanted to give back a bit, and in light of what's going on in the world now, I figured I'd detail a different reason to learn programming and tell you a bit about my experience. I hope it inspires people to learn, but especially those who aren't ready for a full-blown career change (yet, or ever).

    My Background

    Before I dive in, I think you guys might appreciate a bit of background about me. You probably don't have the same background I do, nor will be at a company like mine, but that doesn't mean you can't start learning things or find a way to adjust your job within your company.

    I have been a techie for a very long time. I'm in my mid-thirties, and I've been using computers since I was about ten years old. A lot of that time was spent on basic stuff - games, typing, word processing, spreadsheets, browsing the web. From there, I started repairing and (re)building/upgrading computers for myself, family, and friends. I learned a lot about what NOT to do professionally at a time when I didn't have much in terms of consequences (see /r/talesfromtechsupport for their opinion on how to help family... haha). I also got into Linux around this time and made TONS of mistakes on an old computer learning how to get things running. Didn't know what I was really doing, but it was a fun way to kill time when I couldn't spend it with friends.

    A few years later, I started learning html and css in the early days of html 4.0. I thought I might enjoy programming, so I took some classes in high school. I was good enough at it, but it felt super tedious for me and I figured I just didn't like it, despite having spent time with VB, VC++, and a little bit of JavaScript. I learned the basics of things like variables, data types, loops, control flow... The basic grammar of the languages. Built some small stuff, but it was frustrating enough that I gave up on it. I also stopped messing with Linux because I got a nice computer and started gaming heavily.

    When I went to college, I follow a pre-med path. I worked at the computer labs and ended up in supervisory role. This taught a lot about customer service and really interacting with co-workers. Soft skills are super important, as I learned. I graduated college without a full-time job and without a competitive advantage trying to get into med school. I gave up on that. Around this time, I got back into linux fairly seriously, learning commands, running a home file server, then adding torrenting functionality, music streaming apps, etc.

    I ended up working for the US Census for a while doing everything from address canvassing and mapping through a short stint as a supervisor in their IT dept, though I ended up moving back to Admin because I could train people more effectively than others could and they needed me.

    I was a writer for a tech blog for a while, doing guides, a few reviews, and just generally

    Fast forward a few years, I moved to NYC for a post-bac, and I landed a job at a tech startup for a while being paid decently and doing a lot of data management work.

    A few years later, I gave up on grad school (too expensive) and ended up working for an e-commerce company that's relatively small, but was growing moderately at the time. This was roughly 5-6 years ago now. It wasn't until about three months before I got this job that I started to (re)learn programming. I went through codecademy for python, then did a bunch of supplemental stuff, learn python the hard way, relearned python 3, and did an online group course through I company I ended up working at as a side-gig later. We had live zoom classes and office hours and projects and homework. This course started about 3 months into my new job.

    So, to recap, I was messing with computer since I was 10 years old, got exposed to a lot stuff even if I didn't do much with it, and just nurtured a love of all kinds of technology. Later in life, I self-studied python for 3 months, got a job doing tech support for an e-commerce company and continued studying for another 3 months, and at that point did a 10-week online course. So, about 9 months after I started learning python, I did a project with two others where we used the stripe API to pull dummy data from fake customers' accounts, and then display very basic trends and metrics using the bokeh library, and threw this into a django app. We each did a different part, but taught the other two how to do what we did.

    That brings me to my current job and the end of any real formal learning. When I started, I was employee #8, and alongside 3 free-lancers overseas, that was our company. One founder and one manager (together, the two partners, owners of the company), me as tech support, one as customer service, one manning the store, one doing ppc/etc, and one shipping out customers' orders.

    Disclaimer

    I am absolutely privileged. I did not have to provide for a family while I was going through this. I was broke, but didn't have to worry about rent and food. I had years of interest and love for tech that filled in a lot of knowledge. I'm lucky to have ended up at a company that rewards risk-taking, doesn't punish failure, and allows most of us to grow and switch into positions where are interests and budding talents lie.

    Most people won't have all of these things. Still, I hope I can give you some insight that might help you. Sometimes, my advice will be wrong. This doesn't fit all situations. Somewhere in here, though, there's probably something for you to consider. If you're someone who's thinking about learning programming but aren't sure why or how it'll help, then this is especially directed at you.

    If, however, you're making progress and have a lot of general frustration, I think maybe my background and career path might inspire you to have some patience for the process or learn from my mistakes or successes.

    If you have imposter syndrome, well, there's a reason I never called myself a programmer for years even when I was doing it regularly. I hope my journey helps you realize that sometimes you just roll with the punches.

    Building Skills Efficiently

    My story

    I knew a lot about technology. I watched tech news and youtube channels and follow engadget until the verge writers split off to do their own thing, and in general swallowed up tech. I used whatever I could get my hands on, which was usually old, outdated equipment. I learned a lot about obscure stuff that gave me some geek cred - something that isn't important to have in and of itself necessarily, but makes you memorable when networking.

    Networking

    Networking is making connections in a sustainable way. Sure, you can be on linkedin with someone you met once at a conference and get a job. Happened to me a few times. But, I feel, the trick to networking well is to be passionate but also be respectful of others' time. I shut up and apologized when I caught myself ranting/rambling. Often, I was urged to continue because who I was talking to had similar interest levels. Other times, I had turned them off to further conversation. This is how you can develop soft skills at the same time as making quality connections. Again, soft skills are integral to any job, but especially so in any technical role.

    I had a unique background, having run my own linux server at home for a while. I made friends with junior and senior sysadmins, thinking that was something I'd try to get into, via something like a tier 2 or 3 tech support position. Didn't happen, but some of those people I still talk to and turn to for advice. They stayed in touch because they liked my taste in gadgets - often ones I couldn't afford but drooled over reviews of. Staying in touch is a life skill, and is very close to staying engaged, something you need to learn to do well if you want to do project management, or any kind of management to some degree.

    Back to my story

    I talked about tech like it was my life, even though it really wasn't. This was my "fake it til you make it." This helped me get a low-paying job in tech support. That allowed me to learn about a specific domain of customers and physical products, and really helped me get my tech support chops. Even today, I hate doing anything in Customer Service, but I feel for the people in my company who are doing it and I treat them well, and when I can, I give them opportunities to step up and learn and do more. These are tangible management skills in almost any job you can think of. Do NOT neglect these.

    I knew a lot about cellular technology. Not a ton, but more than anyone else at the company. We had a partner through which we sold a service. I learned about cellular, about the devices we sold, and I had some opinions on the direction of technology. This caught one of the partners' interest. He wanted to know if we could bring the service in-house. I did my best to help answer that question.

    Learning on the job

    I admitted that I knew some but not everything surrounding the question. I also mentioned I could learn it. How did I know I could learn it? I had done it before through my interests and hobbies! Learning how to learn is incredibly important! Anyone here will tell you that if you can't read documentation and learn something, programming isn't for you. You need discipline to do that, and you need to know yourself so you can use all the tricks to force yourself to learn quickly, focus faster and for longer, and take the right kind of breaks when you need to.

    Learning and teaching

    But, another reason learning how to learn is important is because it teaches you how to teach. My role at the census was incredible because I learned how to teach effectively. I did onboarding, then taught how to do payroll. My shift processed almost double the payroll than other shifts because I taught them basic keyboard shortcuts and showed them small optimizations in the keying process (we'll get back to this later). I also taught others who ended up taking over onboarding how to fingerprint more consistently and effectively. That's not an easy thing, and if your prints didn't process, you couldn't work! It had tangible benefits in getting us fully staffed in a timely manner.

    This also is what helped me get my paid blogging role. Independent research was one thing, how-to guides and the like were another. Learning skills like annotating screenshots, building troubleshooting sections, and understanding processes is fundamental to writing good documentation for lay people. It might be a bit different for programmers, but for people in other, non-technical roles, going that extra step or two here and there really sets you apart by more than you think.

    Back to learning on the job

    Because of those skills, I had the opportunity to spend part of my shifts away from calls so I could focus on an on-going project. I eventually even set up a local server and tested a device I reprogrammed myself to see what other "gotchas" were in the process. As my understanding grew, I was able to better communicate with the existing service provider, and our business increased. This led to another opportunity.

    My job at the computer lab entailed interviewing and hiring, as well as onboarding and training (like at the census). Our call volume went up, and I hired someone to help me and gave them the training they needed. This gave me more time to work on the project at hand.

    Ultimately, I determined that it didn't make sense to leave our service partner until we had a better foothold in the industry. Still, delivering that kind of opinion with organized data and experience was crucial. It allowed me to start taking on smaller projects in the company.

    Programming as a tool: part 1

    As my boss learned, I was learning how to program and do small projects in my spare time. I was tasked with organizing customer information into a central database of sorts. I under-promised and over-delivered so well that Scotty himself would have been proud. Not something I can blindly recommend, but I'll let the full-timers speak to that. I will mention, though, that I saw that my boss valued honesty and I kept being honest back (but just adding a margin for error). At the end of the day, I accomplished the goal, even with a few missteps.

    A taste of project management

    Because of that, for more moderate projects that I didn't feel comfortable doing, I was tasked with hiring freelancers and working with our own developer to deploy things. This was because speaking tech and translating to lay speak is an important soft skill. It enables you to manage others effectively, but also enables you to have valuable input. It is also crucial to know your limits so you don't make over-reaching conclusions. You learn how to work in gray areas.

    Programming as a tool: part 2

    Skipping ahead a bit, the company grew and we took on an interesting project, working with suppliers to list items for sales on ecommerce sites and drop shipping them.

    Our CRM had over 1.1 million items, even though there was a 38% overlap. To fix a problem like this, you need domain-specific knowledge. Explaining to programmer that, "yes, Amazon thinks every ASIN is unique product, but that's not actually true" can be tricky and annoying. Telling them "each manufacturer uses a different field as a primary key, and sometimes those cause duplicate ASINs" is much clearer. Knowing which fields to trust always or sometimes, which to never trust, when to use context and when to ignore context... These are all enabled by domain-specific knowledge.

    During this phase in the company, I spent a lot of time identifying criteria to match duplicates over a variety of contexts. I spent a lot of time writing scripts to do bulk edits, deletes, or adds to our content-management system. I also spent a lot of time making quality-of-life alterations for our shipping department. This lead to another focus of mine.

    Operations and Procedures / Programming as a tool: part 3

    Programmers need to learn to be analytical, but they also need to learn to be procedural (hehe). Programmers understand how skipped steps and vagaries can lead to inconsistent outcomes.

    Learning how think like a programmer, even if you aren't one, is incredibly useful when combined with domain-specific knowledge. Now, I know many of you are familiar with the "new guy who wants to change everything" trope. This is where your soft skills come into play.

    Learn how a process is done. Understand their pain points, and how they deal with them. Understand what they do well. Ask hypothetical questions with good, concrete examples. Do this with people on the line as well as their managers. It's rare in life that people are on the same page, so understanding as many sides of a thing as you can will help. This is your discovery phase, and ONLY after you have completed this can you try to improve things.

    I used an online database tool with a wysiwyg front-end builder called knack. It's like dreamweaver meets google docs meets databases. Can't speak for anyone else, but for me, it was the right tool for the right job. I knew that I hated front-end development (and I still do!), and since writing something myself and deploying it would eat into time spent for other responsibilities, it wasn't an option for me. This tool bridge the gap, and it was cheap to implement in our case.

    This let me fix the crucial mistake that most non-techies make: spreadsheets are not databases. Speadsheets are fine things. Very useful. However, if you need to have auditing or controlled access, even google sheets isn't going to do it for you. Most normal people don't know this. You have an advantage here. Implementing knack really streamlined a lot of smaller undocumented processes regarding re-shipments, returns, repairs, managing online presences, and a host of other things. I'm pretty sure our slack usage dropped by half. Most of these little applets were CRUD forms and work queues and took maybe two days to go through discovery, a day or two to build a prototype, and another three days to test, adjust, and deploy.

    An average of 6-7 business days to reduce errors, prevent record destruction, and streamline someone's job? All of those departments LOVED me. The cost was $40/month? Managers loved me. I became the go-to guy to handle these things. Making sure people can't make mistakes in a friendly way like this really goes a long way to building good will with your fellow employees, but that only works if you take their feedback and understand the administrative process. What I mean here is that if someone on the line wants a change but a manager doesn't, you have to explain the need to the manager and the roadblock to the line worker, but in a way that doesn't antagonize anyone involved. Again, soft skills.

    Back to the story

    Throughout this time, I'd budget work hours to learn. Parts of my job relied on staying up to date about changes to our tools and SaaS systems, but also larger trends. I was able to justify going to PyGotham a few times as a work-education thing. A few of the tricks and libraries I picked up really helped us out when we had some jams, so that was money well spent as far as the partners were concerned. But, I also took a renewed interest in our service-related products. I started to help out some of the product-adjacent managers to see what else was out there, both people we could buy from and competitors. Understanding this was crucial to developing tastes and understanding customer feedback better.

    Hardware

    Fast-forwarding, I started implementing product testing procedures for new products, worked on a new manufacturer partner's product to integrate it in our service, troubleshot issues related to existing products, and eventually we scrapped a lot of our business and focused on the key money makers. For me, that meant hardware. I learned a lot by documentation and training. We finally decided to bring our service in house. We gained an incredible development team in the process.

    The biggest part of this was device configuration. It was a nightmare keeping them apart and revising them, not to mention the fact that we didn't audit what was incoming. If the manufacturer made a change, we were the last to know about it. So, I did something I'd only know to do if I used it as a programmer, I used GitHub. Git is a great tool for version control of ALL kinds, not just code. Configurations are perfect for this.

    Troubleshooting customer issues was also super important. I became the leading internal resource for the hardware, so I started working with our developers to help them understand what the devices can do in order to better leverage them. I also worked closely with the tech support team to give them what they needed to troubleshoot and resolve issues better. I pre-formatted remote commands for them to use and I wrote a lot of the tribal knowledge I had gained down into a document, eventually splitting that into guides for interacting with the devices.

    Programming Full-Time

    This brings us into recent months. After organizing configs and implementing changelogs, I got ahead of the manufacturer's changes. I started testing firmware before we deployed it. We got ahead of problems. I wrote tools that used the APIs that our developers made to ease things for tech support tier 3. I wrote tools to help organize files before they were committed to git. I worked with the developers more closely as we faced a few large bumps in the road.

    Finally, a few weeks ago, I was transferred to the engineering team full-time.

    Skills and Takeaways

    While I did end up as an engineer, you'll notice that the vast majority of my job history and skills were tangential or parallel to programming in some way. I wasn't a programmer 99% of the time, nor was I anywhere near a full-time engineer.

    However, learning programming gave me several skills I didn't have before:

    • Analytical thinking
    • Procedural design
    • Implementing stopgaps
    • Simplifying and streamlining complex processes
    • Understanding problem domains
    • Thinking in a more abstract way
    • Integrating different solutions

    Could I have learned these elsewhere? Sure. Arguably, some I was already starting to from my Linux experience. Still, learning programming streamlined learning those skills. Then, I could fully take advantage of them with my other skills:

    • Being empathetic to coworkers
    • Understanding how to navigate management
    • Networking efficiently and making good impressions
    • Building knowledge through passion and diligence
    • UNDERSTANDING FREAKING SPREADSHEETSI can't believe I didn't know what a pivot table was until like three years ago
    • Meta-learning and teaching

    All of these allowed me to do a wide variety of jobs in a few different roles:

    • Project management
    • Training and team-building
    • Light data analysis
    • Supercharged data-entry and management
    • Operation design and execution and a bunch more.

    Lastly, I hope there are few different things that you can take away from my journey so far.

    My journey went on to engineering; yours doesn't need to

    As I've mentioned, I hope this post has given you some ideas for how you can develop your existing career using programming. Not everyone has the bandwidth or desire to make a full career change. Others simply don't have the luxury to do it in one fell swoop. A lot of my ideas can apply to various office, support, and "dispatch"-like positions in warehouses/factories. It can seriously help you streamline and speed up work you could otherwise already do at a much slower pace. Also, crucially, if you're in an environment that appreciates and allows you grow into these tools, you can use what you learn to pivot yourself more safely if you DO want to make the change.

    If you are in a situation where your boss sucks or coworkers are shit, then feel free to keep what you're doing as secretive as you can. Basically, automate your job as best you can, but don't tell anyone. Then, use the rest of your time to learn and hone this skill until the time is right to leave/pivot to a different job, or to jump ahead of your boss or into a different department. Just be sure you have a record of your code so you can show it to potential employers, and if you can, anonymize your data as best you can so you can't get slammed for giving away any secrets.

    Programming is a useful tool in and of itself, even if you're not a programmer

    Programming is a great tool to make your job easier, so you can spend less time doing tedious repetitive things and more time doing things you like or expanding and taking on more projects or responsibilities. You don't have to change careers to appreciate this. In my roles, I've used python + pandas to take gigantic spreadsheets (excel chokes after filesize is over like 150 MB or something) and apply basic changes, more advanced changes, or create pivot tables. These are common office tasks and functions that can get annoying to have to do by hand week over week. You can automate that so you can focus on other crap.

    Programming can be a useful tool in the abstract, even if you're not a programmer

    Programming teaches you a methodical way to think about problems. It gives you a variety of abstract tools to solve those problems. Even if you can't implement them in a language well, you can still talk to those who can. You can also apply ideas to the real world. Conditionals are basic programming building blocks, but you don't often see people in smaller companies or mom-and-pop operations using flowcharts for their operations. Documenting best practices and using these things can make you look really good when all of sudden the business is slammed and - WOW! you've just onboarded and trained 3 new people in a day or two to do the jobs you need them to do. Thinking of contingencies is sometimes less present on programmers' minds, but something sysadmins and infosec people think about a lot (at least if they're willing and able to do their job well).

    Moreover, if you work at small companies or startups, operations positions are often ripe for advancement. Small software companies often hire people to do manual QA instead of automating it. If you create the procedural docs to do that and then start to automate, there's often room to wiggle your way into a new position. At the very least, when someone moves up or out, you're in a better position.

    Working on tangential skills can make you into a better programmer

    Soft skills are something we all know and talk about. Networking is something we all know and talk about. These kinds of things can really help convey the kind of person you are. Hopefully through studying programming, you show yourself to be more methodical, organized, and explicit in the real world things you do. These are all things that you learn in programming that make you better at things in your life (to a point, of course).

    It does work the other way around! Learning how to analyze line work can help you think of pipelines more easily. Thinking of group organization can help with data models. Understanding how teams work well can help you organize an API. I watch tons of woodworking and metalworking videos by weekend hobbyists. Even if it's something completely different, I often find that my mind will come upon a good solution to a problem I'm stuck on. Take your inspiration everywhere you find it.

    Thinking outside of the "concept" box, but staying within the "propriety" box is the sweet spot

    Lastly, in real life I'm often told that I'm a genuinely nice guy and very memorable. I wasn't always this way! I worked hard to remember some very basic things.

    • Sometimes, people just don't get something. You need to hear it with the right wording, at the exact right time and place, under the right arrangement of stars, and with the right inspiration to understand sometimes. This happens to everyone at some point - it doesn't make them stupid or bad or whatever. Remember at least one of your moments so you can be patient with others.
    • It's easy to talk down to someone (oversimplify), and it makes you look like an asshole. It's also easy to speak too technically and lose them, and that can also make you look like an asshole. Apply some boilerplate in the conversation. Something like, "I'm not sure how familiar you are with X, but blah blah" and then get more technical if they know or get simpler if they don't. Don't be afraid to use analogies in casual conversation, because if you subsequently use analogy in work conversation people won't take it the wrong way.
    • You have to stand your ground sometimes. It's important to learn how to be firm but also sympathetic. Crucially, this sweet spot is different from person to person. I still don't have a good way of figuring this out easily, though.
    • I'm important to observe pleasantries, water cooler talk, and operate within general rules of propriety. It makes people feel familiar and comfortable. This builds you good will, which goes a long way when you try to introduce weird concepts. As an example, if you're nice and understanding (genuinely), you can more easily talk to coworkers about their processes and can get them to change them more easily. This can really help with frictional people, especially when you're stuck trying to make a team adopt a change their stupid manager is trying to make. You can also back them up if it doesn't work out.
    • You are memorable when you are passionate. It's better to be positively passionate about something than negatively, generally speaking. That positivity and affection for your subject of choice really sticks with people.
    • Learn how to see if people are engaged with what you're discussing. Being apologetic if you're ranting can buy you good will, or can help others reinforce that they are interesting in what you're talking about.
    • Learn to take an interest in anything. Am I ever going to wear makeup? Not likely. Have I gotten to know colleagues better by shutting up and listening and trying to understand makeup? Hell yes. Have I made connections with potential business partners or coworkers by being able to contribute a bit to conversation? You bet. Seriously, most people don't have attention spans to learn about things that are not interesting to relevant to them. Developing this skill reinforces your ability to learn about boring or irrelevant things. It also lets you find more common ground. Years after learning about makeup with some coworkers, I accidentally landed a sale with someone because I kept up a conversation with someone who was a makeup artist, and she talked with her boss about asset management.

    I know many of you will disagree with some of my points. If you do, I'm sure we can learn from that conversation.

    I know many of you will point out that a lot of this is common sense. It is, or can be, but sometimes you don't realize something unless it's placed, plainly, in front of you.

    I also know that my story is different, and you may have more struggles. I've been lucky. That being said, I do believe that I was either prepared enough to recognize the luck and take advantage, or did my best to make the most of the luck when it came up. I hope the above can help someone somewhere do the same.

    submitted by /u/jivanyatra
    [link] [comments]

    Please help me understand the difference between back and front end languages

    Posted: 14 Aug 2020 11:17 PM PDT

    I recently took a uni course that had me create a program in C#. The majority of the program was backend and simply output the results to the console using basic text. I now want to create a more user-friendly front end but don't know where to start. Is C# suitable for front-end development or should I use a different language altogether? Or maybe I am just not understanding this whatsoever. Please help, any feedback, hints or guidance would be amazing! Thanks!

    P.S. I enjoy C# but if there is a more robust or updated alternative, let me know.

    submitted by /u/JonoMN
    [link] [comments]

    Self taught developer and I need some guidance

    Posted: 14 Aug 2020 11:17 AM PDT

    So I am so far completely self taught for what little I've learned so far.

    I started out early on with free code camp and hated the way they taught. I then found The Odin Project and I absolutely love how they teach and how the curriculum is layed out. I'm taking the full stack JavaScript curriculum.

    I've completed the HTML/CSS and have started a little bit into the JavaScript portion but as I'm getting further into the program I'm having more questions that I can't answer just by using Google. More specific questions particular with how I code and how my workflow is and whatnot.

    What do you guys recommend for something like this? Should I get a tutor? Are there any good forums? Is r/learnprogramming good for this? I like the idea of being self taught and going at my own pace but I want to be able to have someone more experienced to talk with while I'm learning in case I get stuck.

    Any help would be appreciated. Thanks!

    submitted by /u/xyzzzzzzzzzzzzz
    [link] [comments]

    Need help in making quiz app using tkinter

    Posted: 14 Aug 2020 09:03 PM PDT

    Good morning my dear programmers,

    I thought to create a quiz app using tkinter. It consists of 5 questions and a next button so that when the user clicks next button the first question changes to second question, second one to third one and so on....I created code like that. But my expectation is not correct. When i run the code the first question appeared normally, but from the second one onwards instead of questions it came like Label2!, Label3!, Label4!, Label5!. I need help in solving this.

    This is my app source code link:

    https://gist.github.com/programmer24680/b9b8bfb9320f88a52b6f2611c24b1ff7

    submitted by /u/programmer24680
    [link] [comments]

    How to understand difficult concepts faster and better

    Posted: 14 Aug 2020 04:42 PM PDT

    This works for everything. Not only programming. Also works whether you just started or have been working for 400 years. I'm using currently to learn webpack for my job and Unity for my hobbies.

    So, what is it?

    It's called the Feynmann Technique. Some of you probably have heard it already. How do you do implement it? Whenever I have to learn something new. Let's say webpack. I try to gather all the information possible at the beginning. I try to understand the concepts and practice a bit. But that's rarely enough when you are dealing with complex subjects. What do you do next?

    You teach it. It doesn't matter if you don't fully understand it yet. Teaching it is the best way to find exactly where the missing pieces of your knowledge are. It's faster to find what you don't exactly understand. It's less overwhelming. It's even fun. It can make you help other people. Who do you teach it to? You can teach it to a rubber duck, write an article on dev.to 🙄. Your colleagues. Here you have to find the best way for you to teach it. Only important thing is to enjoy this process.

    Suddenly your mental model starts to establish and things make sense. You start to understand the why and if you don't you clearly see what's missing and can find more information. The more you apply this technique the easier and faster you start learning.

    Only thing to have in mind

    Learning is a process, you're never done with it. Especially in programming. You will forget things. You will get concepts mixed up. You will learn something wrong and make mistakes. But you will learn and improve. See learning as a something that accompanies you along the journey. Don't expect to finish 2 courses on react and suddenly "You know React" and are ready to work. You have to work and learn at the same time.

    Anyway that's it, have a good day ✌

    submitted by /u/enrjor
    [link] [comments]

    Install HDF5 package with MinGW?

    Posted: 14 Aug 2020 09:10 PM PDT

    How do you install the HDF5 package on Windows with MinGW? I can't find any instructions that actually explain this coherently. I have CMake installed, but the HDF5 install instructions seem to require Visual Studio. The documentation on the HDF group website doesn't mention this at all.

    submitted by /u/DKTRoo
    [link] [comments]

    Sockets and WebSockets

    Posted: 14 Aug 2020 03:49 PM PDT

    What is the difference? I've read that WebSockets are good for real time communication, but aren't normal sockets just as good? When and why would I use a WebSocket other than to connect to JavaScript?

    submitted by /u/User68645
    [link] [comments]

    [noob question] - looking for chatbot that can integrate with os

    Posted: 15 Aug 2020 12:07 AM PDT

    Hello,

    I'm planning my first raspberry project. I would love to have chatbot, that could do some administration tasks like checking stats of nodes in my system etc. I would like to communicate with it via slack, discord, telegram, rocket or matrix clone of slack, that I forgot it's name.

    I have solid basics of programming in Java, python and bash so that would be fun for me to do it from scratch, or write some modules to existing solution.

    For now, I just need reference, how to make selfhosted chatbot, that can deliver simple info about system, where it resides, like free memory, cpu and how to communicate with such chatbot via one of the communicators, that I mentioned above.

    submitted by /u/lord_EarlGray
    [link] [comments]

    Help with extracting integer from string C++

    Posted: 14 Aug 2020 08:19 PM PDT

    I have a vector of string that contains data like :

    vector<string> "[70, -120, -3], [-29, 1, 268]" 

    and the code to extract int from str:

    int extractIntFromString(string str) { //find a digit size_t i = 0; for (; i < str.length(); i++) { if (isdigit(str[i])) break; } // remove the first chars, which aren't digits str = str.substr(i, str.length() - i); // convert the remaining text to an integer int integer = atoi(str.c_str()); return integer; } 

    the method used:

    for (int i = 0; i < string.size(); i++) { string str = string[i]; vector<string> getInt = delimitString(str, ","); int x = extractIntFromString(getInt[0]); int y = extractIntFromString(getInt[1]); int z = extractIntFromString(getInt[2]); } 

    the code returns

    int x = 70 int y = 120 int z = 3 

    The question is how to I extract the int with negative sign as I need int y = -120 and int z = -3

    submitted by /u/Kiosk99
    [link] [comments]

    Web application outputting chunks

    Posted: 14 Aug 2020 11:56 PM PDT

    Hey everyone hope you're all well.

    I'm working on a web application personal project and I'm curious to understand, when outputting data in chunks, is this an advantage for the server by not needing to know the size of the data to be sent across the client?

    submitted by /u/GeoCrash2k
    [link] [comments]

    Am I not smart enough to be a data scientist?

    Posted: 14 Aug 2020 05:52 PM PDT

    Sorry for the long post, but I'm looking for honest feedback.

    I'm unemployed, have a BS in Microbiology and a Master in Public Health. I'm interested in the tech field and have very limited skills in Python coding. Embarrassingly, I did a data science/Python bootcamp last year, but learned next to nothing. I just couldn't keep up with the fast pace, and couldn't concretely master the concepts. Plus, I just suck at math. So I'll have to relearn everything from scratch going into this field.

    I'm 35+ years old, but looking for a career change. I'm tired of public health and hitting the glass ceiling. I've always been interested in tech. Ideally, my perfect role would be a remote role because I care for my mom who has stage 4 cancer. I was interested in tech, not only for the possibility of remote work (to keep an eye on my mom at home), but also the work itself and high earning potential.

    Can anyone share how people with no to limited experience get into tech roles? And could you share any advice you have to help me get to where they are? I've looked into DataQuest, which is good but the format doesn't work for me. I'm a visual learner, and would do better with video lessons. I would love another online learning experience, but not the fast pace of a bootcamp. Any free/low cost programs and trainings that might help me break into data science would be greatly appreciated.

    Also, do you think I'm a lost cause in this field because I suck so badly at math? I just don't know what is the best direction for me. So I hope it's ok that I reached out to you for some advice. Thanks so much!

    submitted by /u/Shalar79
    [link] [comments]

    Programming certificates

    Posted: 14 Aug 2020 07:24 PM PDT

    In your opinion, what are the most valued/recognized online programming certificates? (Like FreeCodeCamp).

    submitted by /u/PipoVzla
    [link] [comments]

    Can anyone explain the two loops in this solution to leetcode 10 Regular Expression Matching?

    Posted: 14 Aug 2020 11:09 PM PDT

    leetcode.com/problems/regular-expression-matching/

    class Solution { public: bool isMatch(string s, string p) { s = " " + s; p = " " + p; int n = s.size(), m = p.size(); int dp[n+1][m+1]; memset(dp, 0, sizeof(dp)); dp[0][0] = 1; for(int i = 1; i < m;i++){ if(p[i] == '*') dp[0][i] = dp[0][i-2]; } for(int i = 1; i < n; i++){ for(int j = 1; j < m; j++){ if(s[i] == p[j] || p[j] == '.'){ dp[i][j] = dp[i-1][j-1]; } if(p[j] == '*'){ if(p[j-1] == s[i] || p[j-1]=='.'){ dp[i][j] = dp[i][j-2] | dp[i-1][j]; }else{ dp[i][j] = dp[i][j-2]; } } } } return dp[n-1][m-1] > 0; } }; 

    can't really understand these three videos

    https://www.youtube.com/watch?v=l3hda49XcDE&t=199s

    https://www.youtube.com/watch?v=bSdw9rJYf-I

    https://www.youtube.com/watch?v=c5vsle60Uw8 [since 12:26]

    submitted by /u/JacksonSteel
    [link] [comments]

    Need Guidance on Website I'm Attempting to Create!

    Posted: 14 Aug 2020 11:08 PM PDT

    Hello! I want to create a website where I can search a company name and all latest news about that company from multiple news articles pop up. I'm new to coding so I would appreciate some guidance on this project. Does anyone have any idea's or resources I can use to understand how I'd go about this? Thanks :)

    submitted by /u/jacoby9089
    [link] [comments]

    SQL scripts

    Posted: 14 Aug 2020 07:20 PM PDT

    I feel kind of dumb for asking this, but I'm honestly confused. I have an assignment for my database design class. I have to create a sample database with info that I choose.

    Most of the requirements are fairly straightforward. Things like ERDs, normalization, stuff like that. But another requirement is writing SQL scripts. I'm honestly not sure of what that even means. I've tried googling the info, but I feel like it confuses me more. To top it off, I haven't been able to get ahold of my professor (thanks a lot, online classes) to clarify this information.

    Can anyone sort of explain what "writing an sql script" actually means? What is it supposed to look like? I'm just confused. Sorry if this is a dumb question!

    submitted by /u/MoreChilli7
    [link] [comments]

    I have one month to learn some Java. Is it possible for me to get to grips with the basics?

    Posted: 14 Aug 2020 07:17 PM PDT

    I'm starting a computer science degree next month. It teaches programming from the basics but I have no understanding of any programming as I went down the maths route and am only now going into computing.

    Is it possible for me to learn the basics in this time? Any tips or resources? I state Java specifically as that is what will be used in the first term.

    submitted by /u/Gamererz
    [link] [comments]

    Learning Front-end as a C/C++ embedded Developer?

    Posted: 14 Aug 2020 11:04 AM PDT

    Hi all!

    I'm currently working as an intern and am a rising senior in my uni's ECE program. I've had pretty heavy experience doing embedded work with C/C++ (moreso in the realm of EE and CE work than CS). I've yet to see that many people talk about their road from doing low-level embedded work to doing high-level, front-end work if those people exist. I'm looking to make that transition just because I feel I'm much more a visual learner and would love to see what I can create. I know python and have done some HTML and CSS as well.

    I would love to hear what has helped you to make the transition if possible, and some pros and cons about moving from low-level to high-level software? (:

    submitted by /u/i_do_not_byte
    [link] [comments]

    Loop exercise is giving me difficulty (C++)

    Posted: 14 Aug 2020 10:01 PM PDT

    The exercise requires you to prompt the user to input a number and count from 3 to 8. If the user does not start with 3, you must give an error. I wrote the following:

    #include <iostream> using namespace std; int main() { int n; cout << "User, count from 3 to 8!" << endl;//prompts user do{ cout << "User, enter number!" << endl;; cin >> n; //Counting input for (int i=3; i<=8;i++) { if (n<3 || n>8 || n!=3){ cout << "Error!" << endl; } if (i==n){ cout << "Good Job" <<endl; } } }while (n<=8); return 0; } 

    Problem is all the conditionals execute. All the if statements are prompting. What am I doing wrong?

    submitted by /u/turdynurdyslurdy
    [link] [comments]

    [Java] Is Spring Boot + Hibernate still really in demand?

    Posted: 14 Aug 2020 01:01 PM PDT

    Hello, I've been learning a lot of Javascript recently and wanted to know if it's still worth it to learn Java/Spring Boot/Hibernate?

    submitted by /u/adagioaranjuez
    [link] [comments]

    edX Georgia Tech Introduction to Python Programming worth paying for?

    Posted: 14 Aug 2020 09:15 PM PDT

    I want to move into data science (currently a product owner / business analyst). I'm looking at applying to Georgia Tech's OMSA program for fall '21 and need to spend the next year prepping. I've done a bit of programming here or there, and completed a decent chunk of CS50 a few years ago.

    One of the pre-recs to the OMSA program is an understanding of python equivalent to what you get out of their Introduction to Python Programming. On edX, the course is $356 (to unlock the problem sets). Is it worth the money? How is the course compared to other offerings (CS50, MIT's 6.00 series, Berkley's CS61a, etc)? How challenging are the problem sets compared to the other programs?

    Looking through the syllabus it doesn't really seem like the course covers all that much (as I recall, CS50 covered most of those concepts in C in the first two or three weeks) -- is it a pretty basic course, or does it just go into more depth into each topic than CS50 does?

    submitted by /u/ApprehensiveWhale
    [link] [comments]

    Can you dynamically reference a DB table from a field value in another table?

    Posted: 14 Aug 2020 05:15 PM PDT

    Sorry in advance for the confusing wording in my question. I have a couple images that I put together to make what I'm asking clearer.

    Background

    I'm starting a personal learning project where I make a cooking instruction builder django app where a user can make his/her own cooking instructions in a programmable way. The reason I want it programmable is because I eventually want to make animations that correspond to the steps. If the user just listed steps as text, it would be difficult to know when certain animations should trigger. Making it programmable would also enforce consistency between different users.

    Problem

    I'm not sure how to best explain my question, so I made a simplified ER Diagram and also examples of the tables filled with sample data. How can I make a table that stores "actions" with specified step numbers when the actions all have unique attributes?

    submitted by /u/scienceyeaux
    [link] [comments]

    New to C++

    Posted: 14 Aug 2020 01:27 PM PDT

    Hello, the name's SonicEmitter. Been learning C++ for a little while. Right now I'm trying to understand this simple code which strangely enough doesn't work. The internet, and the book I'm reading isn't exactly helping so any help would be appreciated. It's suppose to be 3.0 but I keep getting 3 for some reason.

    I'm doing my coding on a mobile app called CppDroid if that also helps.

    include <iostream>

    using namespace std;

    int main () {

    int DD = 3; double K = static_cast<double>(DD); cout << K; 

    return 0; }

    submitted by /u/SonicEmitter3000
    [link] [comments]

    No comments:

    Post a Comment