The Programming Thread

Discussion in 'Byte Chat' started by MoreMoople, Mar 19, 2020.

?

Do you program?

Yes, all the time! 12 vote(s) 21.4%
Yes, sometimes :) 21 vote(s) 37.5%
Yes, but just for fun :D 8 vote(s) 14.3%
I tried it once... 9 vote(s) 16.1%
Nope. Nope. Nopity Nope nope. 4 vote(s) 7.1%
I don't, but I would like to :) 2 vote(s) 3.6%
  1. You missed the "" and the semicolon in your string initialisation, you also didn't make the array long enough to fit the NULL terminator character at the end.
    Code:
    char language[] = "C code";
    
    Assembly is still incredibly relevant because it's the language of the CPU (but in words not binary; it can be translated directly to binary). A compiler will turn your higher level language like C into assembly, then into machine code. On particular projects too, it can be advantageous to use assembly over some compiled language because you get access to particular instructions or you can be 100% sure what instructions will be run (a compiler hides that unless you look at the compiled output).
  2. I think this is a weak argument, to be honest. It is easily translated to machine code, and it always will be, but if nobody uses it except for toy or retro projects, it is not relevant anymore, I would say.
    Although I guess then I would also have to say Latin is not relevant anymore... and I'm not sure if I am fine with that. :p
    What I wondered though, is if assembly language is actually used in businesses.
  3. Assembly is absolutely used in business, but like any language or tool it has its specific advantages. I use it in projects all the time because I work mostly with embedded devices, where I've got no operating system, limited memory, and want to access particular parts of the instruction set (DSP instructions in particular). Sometimes it's easier to write out the specific set of instructions, rather than compile it down from C. Or if you want to be 100% control over what the CPU does and when it does it, assembly is the only way.

    Additionally, every different type of CPU has its own peculiarities, so any cross platform program (such an operating system) has to have parts of it written in assembly such that you can achieve a desired result. The boot process of a computer or OS, where the memory is allocated and started along with other CPU features is just more easily done in assembly.

    And in the case where a higher level language is compiled down to machine code, it's often useful for debugging to have an understanding of what the code is actually doing, what the CPU is executing. It's necessary to translate the machine code into a more easily understandable format (assembly).
    607 and MoreMoople like this.
  4. I'm almost at the end of another semester! This semester I took Object Oriented Programming and Introduction to Data Structures. In the fall, I'll be moving up to the upper-level CS classes, including Software Development, Compilers and Automata, and Data Structures and Algorithms.

    For classes, I've been working with Java, C, and C++. For work, I've been dabbling with PHP and SQL. I won third place in a school programming competition a few weeks ago. It was a really great experience and I hope I can participate again next year. :)

    Have any of you been working on programming projects lately? :D
    UltiPig, farmerguyson and 607 like this.
  5. My latest projects (all for courses):

    Programming language in parenthesis
    - An NNTP client and server implementing a part of the NNTP protocol to the specifications listed in its respective RFC. (C, C++)
    - A game in Unity (C#)(I plan on continuing with this after the course ends).
    - A CRM style application. This is my group's senior project. It is technically still in the requirements elicitation and design phase with implementation beginning over the summer and ending in December. (C#, PHP, SQL, JavaScript using ASP.NET)
    Various small projects dealing with graph traversal and network flow. (Java)
    MoreMoople likes this.
  6. What did you make?

    I've been working on a CV for application for my Master's in AI (I saw 'my' because I am already assuming that I will be admitted... :rolleyes: Who wouldn't want me as their student? :D), and I included four of my bigger projects involving programming.

    I've posted about all of these on EMC, so maybe you'll recognise them! I put underlines under the names because they have hyperlinks, in case the reviewer would like to read a little more (the top three link to a page on my website, the bottom one links to Github).
    UltiPig and MoreMoople like this.
  7. The competition was in teams of 3 people. Each team was given a packet with (the same) 15 problems to solve, and we had to solve as many as possible within two hours. Easy problems were worth 2 points, medium problems were worth 5 points, and hard problems were worth 9 points. Each problem had a one-page description and could be solved with Java, C, C++, Python, or Go.

    We didn't make a big project, but we managed to solve two of the easy problems and one of the medium problems within the time we were given.

    I do remember seeing posts about those projects! I hope that you get admitted. :D
    607 likes this.
  8. Do minecraft data packs count?


    I think minecraft data packs should count. :p
    607, MoreMoople and wafflecoffee like this.
  9. Oh, that's interesting! That does sound like a fun competition format. :)

    In the Netherlands we have the Beverwedstrijd (Beaver Competition), that also has 15 computer science problems, if I recall correctly. It is quite different, though, as it is done solo, and no coding is required.
    There are three age groups, all three for secondary education, but when I was in fifth grade our school was not entering the competition for fifth and sixth grade. They were entering the competition for third and fourth grade, though, which I found out because I had no class and was doing homework in the classroom that the competition for third and fourth grade was administered in. I joined in, just for fun, filling out my details truthfully (when it asked for my grade, I entered '5'). Turned out I was the only participant in the entire country that scored 100%. :D I was invited to some international competition, I think, but I didn't go, because I thought that they probably hadn't noticed I was one year too old to participate. :p
    When I was in sixth grade I asked my school if they could enter the right competition for me, but I was sick and performed very poorly. Oh well!
    MoreMoople likes this.
  10. Sometime i can do code, but mostly i know most is minecraft's java code and variables
    I also knows c/c++ but at only basic level
    rn i'm struggle to learn c/c++
    MoreMoople likes this.