• Breaking News

    Thursday, February 8, 2018

    What do you do after learning the syntax of a programming language? learn programming

    What do you do after learning the syntax of a programming language? learn programming


    What do you do after learning the syntax of a programming language?

    Posted: 08 Feb 2018 07:51 PM PST

    Someone asked the above question on ARCHLinux Forum and Awebb, a very senior member replied so beautifully that I thought many newbies would appreciate, so here you go: Source: https://bbs.archlinux.org/viewtopic.php?pid=1648609#p1648609

    Nothing and everything. It looks like you don't need C at the moment. You're currently in a hardware store and you have already memorized the names and stats of all the copper pipe pressure valves (but not the plastic and steel ones) and you approach the clerk and ask what to do with them. What will he ask you? "What are you trying to build?", most likely.

    I have always wanted to learn some programming languages, but I never took off beyond the basics before I actually found something that didn't exist yet in the form people needed it. It is as simple as that: Programming is not a very good academic activity, if you do not experience an intrinsic motivation to find problems to solve. Programming is such a big buzzword and people are indeed drawn to it like moths to the light, but it really is just a tool you need to perform specific tasks. I have basic blacksmithing capabilities, I can forge a simple blade, but I actually don't need any more blades, because the ones I have are sufficient. My intrinsic motivation to engulf myself in the art of forging metals is not strong enough to start expanding my knowledge, or at least it was, until I was confronted with a problem in the house that couldn't be solved by warming up some mild steel, so I read about different types of steel and made myself familiar with the most basic basics of alloy creation.

    A similar story happened with me and programming: I was absolutely fine with the different shell script languages like bash and BATCH, for the better part of two decades, because most of my work and private use consisted of administration tasks. I occasionally learned some other languages, like C, Python or Lua, because I wanted to modify existing software by writing small patches to fix bugs, modify behavior and add small features. I can read most higher languages to some degree (some more, some less), as long as I don't encounter weird "clever" constructs and language specifics. It's like spoken languages, I know English, German, some French and a little Latin, so I have a chance at deciphering Spanish, Italian and Portuguese as well (depending on the complexity of the text and how much time I have). It was not until I was asked, whether a certain software already existed and, if not, whether I could see to it that it does, that I deepened my Python and learned Qt from the scratch. The difference between learning what I call "academic programming" the way you would do in Computer Science at a University, from a book or some tutorial website, and "learning by doing on demand", is gigantic. I never have to ponder over what to learn next, because I can barely keep up with what I don't know and it's always the question of how to solve a specific problem, and never about what problem to solve.

    You don't seem to be the academic type, you need to find use for your knowledge. I don't want to discourage you, but if you cannot come up with one single piece of software, that you would want that has not been written yet, or that does not exist in the very form you would want it to, then you should ask yourself, whether the world really needs another uninspired programmer. If you, however, can at least find one thing you want, then accept this as your goal. Either start looking up how to do it from the scratch, which will keep you busy and your knowledge will at first broaden but not deepen, or you find a project that already does some of what you want and start modifying it or even contributing patches (this is the heart, soul and essence of Open Source and free software after all), which will deepen your knowledge in a specific part of probably only a specific subset of a language, but it will do so quickly.

    There is also another way. You could adapt your mind set. Step away from "programming" for a second and understand, that this is more than writing code and more than computer science, it is informatics. In the past, we didn't have "computer science" in Germany, we had informatics (until our education system was assimilated into the BA/MA system and everything went "downhill"). Wikipedia has a nice article explaining the differences. The essence is, that programming is only a tool to solve specific problems, so in order to master programming from an academic (or theoretical) point of view, you need to embrace a "problems first" mentality, that allows you to override your intuitive every day actions and to analyze the world around you, so you can formulate a simple abstract program for everything. Instead of simply writing a grocery list, come up with simple formalisms: IF eggs =< 5 THEN add eggs to grocery list. I recommend having a look at Cooking for Geeks by Jeff Potter, which is my favorite example for a programmer's mentality translated into a seemingly mundane environment.

    If you're still reading, I recommend doing all of the above (and below), in no particular order and rather all at the same time (but never all at once).

    ° Stop managing your files and folders manually, write a script for everything. It will give you decent practice with the imperative and procedural aspects of programming and it will train you in spotting syntax errors and possible pit falls. Since you will need to have a backup of all your data, start by writing your own backup script and a suitable systemd service file. I recommend rsync, but that's just my preference.

    ° Find some software you know (as in you have used it and know what it does), use it extensively for a while and then start reading the source code. Say, you use ncdu and wonder how the text interface works, so you do some research and discover how it uses ncurses.

    ° Pick a language, that does anything interesting for you. I mostly work with data and databases, but I rarely do anything interesting with the data, so good pick for me was some object oriented language (I hate OO, but there it is) with drivers, modules and bindings for as many database types as I could find (Guess what: Python. Boring, huh?). If you are interested in device drivers, stick with C (and always glance one step below at assembler types and one step up towards C++). If you have a drug problem or happen to be interested in computational linguistics, try Prolog (or try Prolog anyway and every time you feel down and depressed, remember that some people write in Prolog for a living).

    ° Liberate yourself from the influence of buzzwords. Recognize the fact, that programming is nothing and asking what to do with nothing only makes sense, if your first name is Winnie.

    ° Read those: http://catb.org/esr/writings/unix-koans/index.html.

    ° See the world as a web of process chains and recognize, that programming concepts can apply to everything empirical and predictable.

    Or: ° Enroll in some classes and let them turn you into a role model code monkey. It answers your immediate question. It will, at some point, raise another type of question ("Why am I this and not a carpenter?", "What is the free time everybody is talking about?", "WORMS IN MY BRAIN GET THEM OUT" (not strictly a question, though full of implicature)).

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

    Current data scientist interested in building a mobile app -- What would be the best path to follow (self-taught)?

    Posted: 08 Feb 2018 12:01 PM PST

    Hi all, I'm hoping to get some answers here because I am primarily self-taught and am currently working on my own so I don't really have anyone that is experienced to get good advice from.

    A little about me:

    -- several years of experience in advertising doing analytics

    -- primary language is python, used for machine learning (~3 years)

    -- I have previous experience with front-end dev, but it was mostly building / modifying WP sites (have built two sites ground up)

    -- self-taught (in order of knowledge/exp): python, html/css, javascript, solidity


    I have a little more free time now and I have an idea for a mobile app that I would like to create. I've been researching what I need to learn in order to do that, but I'm feeling overwhelmed with the options / routes I can take.

    It seems that these are my options (with a ranking of how well I know each component on a scale of 5):

    -- python (5) + flask (2) + kevy (0)

    -- js (2) + react native (0) + redux (0)

    -- swift/objective c (0)

    -- java (0)


    So with all of this said, what path should I focus on? Since 90% of my time is spent programming in a data science context, all back-end web/app dev is fairly new to me (except API-oriented programming). Should I leverage what I already know about python and try building something that way? Or should I focus on the JS stack?

    If JS, should I focus first on getting a firm understanding of programming in vanilla JS? Or should I just jump into tutorials for the various frameworks?

    Also, if I spend about 4 hours per day trying to learn it all, how long can I expect until I'm able to actually build something?

    Thanks for any help! It is much appreciated :)

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

    Where would I start to program a computer from scratch?

    Posted: 08 Feb 2018 08:31 AM PST

    So this may sound stupid but I want to build a computer in minecraft. I am fascinated by the core components of how computers work, and have successfully made all the components before such as the ALU, RAM, and some hard coded commands, the problem is once I get a machine capable of taking some input, running a simple operation and storing the response I have no clue what the next step is. for example I can make a machine where I feed it reads the first 7 sets of binary and knows that 1 says add 2 and 3 and 4 says take the answer and store it in slot 6 as dictated by slot 5. I understand this is probably too complicated to explain here, and I may even be in the wrong sub. I would be very appreciative of any help or pointers on where to start this quest. I'm sure it can be done as the hardware is already there, I just don't know how.

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

    What are your favorite programming blogs?

    Posted: 08 Feb 2018 04:44 AM PST

    Which blogs do you follow to learn new programming concepts and stay updated?

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

    (Git) Fork, pull, clone or all of the above when working with other people’s Repos on Github.

    Posted: 08 Feb 2018 07:30 PM PST

    Super new to version control and still learning the ropes here. My question revolves around other user's Repos that contain resources that I would like to use, (mainly for learning). I'm not ready to contribute to these resources and would like to strictly download locally but not have commit any changes to the original Repo. So here's what I've done so far. I've forked the Repos on Github, then pulled them locally. The command [ git remote -v ] shows my account. My fear is that any weird commits I make will reflect on the original Repo and make a mess of things there. Thanks for your help guys.

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

    beginner progam ideas

    Posted: 08 Feb 2018 10:50 AM PST

    hi, I'm teaching a class to non-programmers. We are using QBASIC as an introductory. They've learned most of the basic syntax and now I am making them code a small game. Any ideas of an easy thing to code. I have these two I came up with:

    Guess the number (i.e. 1-100)

    -give hints (i.e. your guess is too high!)

    -keep them guessing until they get the correct number.

    Door Pass Code

    -allow player to enter 4 numbers for a locked door

    -tell them which ones were correct or incorrect

    -if they get them all correct, open the door

    -could give only a certain number of tries

    . . . any other ideas (not too difficult) would be great thanks!

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

    Interview with a software developer

    Posted: 08 Feb 2018 12:29 PM PST

    Hey, I'm a university CS student and for a project in one of my courses, I am supposed to interview someone who has worked in software development for 15 or more years. Would anyone here be able to be interviewed? It's just 8 simple questions about working in the field. I'd really appreciate the help.

    Clarified the assignment.

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

    Can someone explain what this code is actually doing?

    Posted: 08 Feb 2018 09:06 PM PST

    I have a project where I have to create a program that reads a file which contains an array and calculates the mean and also the standard deviation. My teacher helped me write some of the code but he's not the best at explaining what it means. Can anyone explain what each line is actually doing? Thank you.

    https://gist.github.com/anonymous/b1f84531684893ebbbabcf9acc95a6df

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

    Started as a Junior Developer - I'd like to build documentation as I learn - But I don't know precisely what 'good' documentation is... or how to build it.

    Posted: 08 Feb 2018 09:05 PM PST

    I feel like as I'm learning the system, it would be a good time to build up some documentation as I go, a sort of lay of the land. But I'm confused about what people mean by documentation. I've done some googling around to try to get some ideas but I've run into a few issues:

    • Descriptions and References of good documentation is often in reference to APIs and how to use them (ie. frameworks, packages, etc.). I could build some documentation around internal APIs and REST routes, I suppose, but that wouldn't be a lot of work. We have a mobile app & web interface.
    • Most documentation says not to write about what the code does, as the code will constantly be changing and that means documentation needs to be constantly updated / could be a source of confusion. So, what DO you put into the documents?
    • Everyone talks about how important documentation is, but never really what that means to a software company. What kind of documents do they mean?

    We use a mixture of Kanban / Scrum to plan out our work and are an 'Agile' focused company.

    If you had a Junior coming into a role, what kind of documentation would you get them to build, if they were keen to do so?

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

    Can someone tell me what how Arrays work?

    Posted: 08 Feb 2018 09:28 PM PST

    So i understand arrays are used to group together like minded numbers or things like that. And I know how to create and declare a variable. I am just confused on what this piece of code is doing actually:

    int [] n = new int[10]; /* n is an array of 10 integers */ int i,j;

     /* initialize elements of array n */ for ( i = 0; i < 10; i++ ) { n[ i ] = i + 100; } /* output each array element's value */ for (j = 0; j < 10; j++ ) { Console.WriteLine("Element[{0}] = {1}", j, n[j]); } Console.ReadKey(); 

    My main concern is that why do we have to have a for loop and why is i in the square brackets of n. Isnt n an array?

    If someone could do a walk through of this it would be great!

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

    What can I put on my resume after Codecademy?

    Posted: 08 Feb 2018 09:23 PM PST

    I was wondering if I can put anything on my resume after having finish a course on Codecademy? If not, what should I do after Codecademy to put something like Intermediate at Python on my resume?

    Also, for the self learners out there. What platform did you use to learn coding?

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

    I just discovered this https://github.com/P1xt/p1xt-guides, what do you guys think about it for learning?

    Posted: 08 Feb 2018 07:49 AM PST

    It seems to be really well structured and the learning path is clear, exactly what I'm looking for. But need opinions of the community to know if it's good or not cause I'm a noob here trying to learn.

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

    No Internship before graduation

    Posted: 08 Feb 2018 08:40 PM PST

    Hey guys, I just had a quick question and maybe it's a silly one.

    I'm in my third year of college and times really running out for me getting an internship, I've applied to tons of places, but haven't heard back from any. Assuming I don't get one, how "screwed" am I after graduation?

    Thank you for everyone's input.

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

    What language is best for writing emulators and why?

    Posted: 08 Feb 2018 11:18 AM PST

    I want to write an emulator and while doing some research I mostly see C++ instead of say... Java or Python is there an inherent reason for this?

    I know that my specific examples are interpreted languages and are considered "slow", is that it or is there something I'm missing?

    Edit: Thanks for all the answers, now that I look at them they look (relatively) obvious now but
    when you don't know something everything feels distant and disconected

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

    Why can't I count the characters of this text file using this java program?

    Posted: 08 Feb 2018 07:54 PM PST

    package file; import java.io.File; import java.io.FileNotFoundException; import java.util.Scanner; public class Analysis { private Scanner input; private int lineCount = 0; public Analysis(File inputFile) throws FileNotFoundException { this.input = new Scanner(inputFile, "UTF-8"); } public int lines() { while (this.input.hasNextLine()) { String line = this.input.nextLine(); this.lineCount += 1; } return this.lineCount; } public int characters() { int chars = 0; while (this.input.hasNextLine()) { String line = this.input.next(); chars += line.length(); } return chars; } } import java.io.File; import java.io.FileNotFoundException; public class Main { public static void main(String[] args) throws FileNotFoundException { File file = new File("src/testfile.txt"); Analysis analysis = new Analysis(file); System.out.println("Lines: " + analysis.lines()); System.out.println("Characters: " + analysis.characters()); } } Lines: 3 Characters: 0 

    any help is greatly appreciated.

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

    How do I make references in JSON

    Posted: 08 Feb 2018 11:10 PM PST

    I've been messing around with nodejs and learned how to make objects with references internally. I want to store these relationships in a JSON file that can be parsed to pull out these relationships. Is these even possible since JS is a parsed language and if it is what is the best way to go about it?

    Edit: this is specifically for graphs and creating in shortest distance algorithms.

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

    Facebook Messenger Bot

    Posted: 08 Feb 2018 10:43 PM PST

    I have a good amount of programming experience and wanted to share this idea.

    I got in an intense Facebook nickname battle with my roommate. For those who are unfamiliar, in Facebook group chats you and others can change what certain people are called. This leads to some interesting exchanges.

    Anyways, if you have ideas on how to go about creating a bot that changes a persons nickname every time someone else changes it on messenger I would love to hear it.

    Thanks

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

    Allocated space for function parameters??

    Posted: 08 Feb 2018 09:59 PM PST

    I'm focusing on programming. I just wonder if memory is allocated for parameters in functions (especially in C++)

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

    Any programmers who are also musicians?

    Posted: 08 Feb 2018 02:03 PM PST

    Hey, I've never posted here so I'm not sure this is the right sub for this question. Forgive me if it isn't.

    But! I am looking to find a cantus firmus that is impossible to write first species counterpoint for within the constraints given to me by my music theory professor. I'm not sure it even exists, but it would take an extremely long time to test every possible Cantus Firmus with all combination of notes. So I thought it might be possible to write a program to test all of them for me. Is this doable? If anyone here is interested and can help me do this, I will post the class rules in the comments

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

    How does p1xt-guides compare to The odin project or Freecodecamp?

    Posted: 08 Feb 2018 05:15 PM PST

    Title. What's best?

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

    Trouble Starting MySQL server (Mac)

    Posted: 08 Feb 2018 05:04 PM PST

    I apologize if this is not the appropriate subreddit to ask this question. I am also new to SQL and servers/databases so I apologize if some of my questions are incredibly basic or I say things that might not make sense, but I will try to be as specific as possible.

    I have a 2012 Macbook Pro running High Sierra (10.13.3) that I just upgraded from Yosemite.

    I am trying to learn SQL and to help me I am trying to set up a MySQL server on my computer. I downloaded MySQL Workbench and that seems to be working fine, but I am having trouble starting a MySQL server from my computer. I downloaded the MySQL Community Server from this link:

    https://dev.mysql.com/downloads/mysql/

    I downloaded the first link (macOS 10.13 (x86, 64-bit), DMG Archive) and installed it, which seemed to go smoothly enough. However when I go to system preferences and click the "Start MySQL Server" button, it doesn't start. My computer knows I am clicking on it, as it will ask my for my computer password to make changes in system preferences, and the button will light up blue like I clicked on it and sometimes I'll get the cursor wheel, but nothing else happens. There are no error messages.

    I have tried restarting my computer and re-downloading multiple times but nothing changes. I have tried googling a solution but have been unsuccessful. As I said I am very new to this so I really have no idea if I am completely barking up the wrong tree or if its a simple fix, so any help would be appreciated.

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

    How do I make an view in browser on Visual Code Studio?

    Posted: 08 Feb 2018 08:23 PM PST

    I'm new to coding as in I just downloaded the VS 3 hours ago. I keep trying to view in browser or view in default but all i get back is a "supports html files only!" banner. I've tried changing it from plain text to html but it keeps repeating the same thing. I have the MacOS operating system if that helps.

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

    Thoughts on Command Line vs IDE?

    Posted: 08 Feb 2018 04:27 PM PST

    My university now requires all of our code be done on the command line. I understand the sentiment that it helps you understand the machine better but I don't really know anyone who uses the command line for personal projects. That and I love Pycharm and IntelliJ so someone tell me why this is necessary.

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

    Looking to create a web chat application (C++)

    Posted: 08 Feb 2018 08:04 PM PST

    I'm interested in making a web chat applications where two users can send/receive texts, videos, and voice files. Are there any resources so I can learn how to do this?

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

    No comments:

    Post a Comment