• We're currently having issues with our e-mail system. Anything requiring e-mail validation (2FA, forgotten passwords, etc.) requires to be changed manually at the moment. Please reach out via the Contact Us form if you require any assistance.

Programming

A tiny mouse

Little squeak
Apr 8, 2018
17
Does anybody do programming here?
I do C++ although I'm still far from being considered a pro. I'm trying to learn Python, too, because I want to make Blender scripts.
 

Haji

Artistic director at bC
Apr 10, 2018
10
Java a little. So no that low lvl languages as you. ; ) But started with Python actually and smoothly changed to Java because it looks safer for me when I claim classes, not leave it to language's own interpretation xP
 

maple

russian translator
Apr 18, 2018
69
Russia
Hello. I read a book about programming for C under MS-DOS, as I did 20 years ago. I try to read this book.
 

bioloid

Aspiring Fan
Apr 8, 2018
62
57
Maryland USA
I'm a programmer, mostly C/C++ for work, and Swift for play.

This is a C++ rant
Despite working in C++ a lot, I despise it as a language. C is full of undefined (or ill-defined) behavior, which C++ doggedly sticks to under the misbegotten ideal of backwards compatibility. C++ then adds heaping mounds of its own complexity, extending and amplifying these undefined behaviors.

C has automatic type coercion, but only for basic types and with well defined (but NOT portable) rules; C++ adds user-defined automatic type coercion, so something as simple as passing an integer literal into a function could trigger a non-trivial amount of program logic. Moreover, automatic type coercion makes it impossible to specialize a function based on return type. Automatic type coercion made it necessary to add explicit to the language.

C++ completely screwed up const. It was supposed to be concrete and shallow, like literally, you can't change the bits of this thing (at least in this scope). C++ made const abstract and deep, which then made it necessary to introduce mutable, which completely breaks const. In C, const meant you can't write to it, so unless it was volatile, the compiler could optimize on the const-ness. A C++ compiler can't make that assumption, because of mutable.

C++ screwed up object instantiation. RAII is not how computers actually work. Allocation and initialization are not atomic operation. Allocation can fail, requiring an out-of-bounds signal (an exception) to indication that something went wrong; whereas C could return NULL. Initialization could fail (e.g. bad arguments) again requiring an out-of-bounds signal. Other languages can accomplish the same thing with normal program logic. For example, Swift's exceptions are not out-of-bounds, they're syntactic sugar for functions that return false or null when an "exception" is thrown. If you use RAII (the default policy) in C++, then you must pay the price for heavy-weight exception handling or suffer undefined behavior. And you can't get value-type semantics without RAII.

C++ even screwed up its object model. C++ uses isa with multiple inheritance of implementation and dynamic (vtable) dispatch. Java got this right, Swift got this right, isa (i.e. inheritance of implementation) should only ever be single inheritance, whereas acts-like-a (i.e. inheritance of interface) can be multiple inheritance. Even Python and Perl got this right.

In short, C++ requires the programmer to use extreme self-discipline or pay a huge penalty in complexity and undefined behavior. C has undefined behavior but without the complexity. Swift has the complexity but without the undefined behavior. C++ is the worst of both worlds.
 
Last edited:

Katastrophe

Not An Actual Phoenix
Apr 8, 2018
82
I'm still a student so I'm not that pro either, but I can program in C, C++ and Java. I'm the most familiar with C though because I work with microcontrollers a lot. I've been trying to selfteach Python and Javascript as well, but I'm not sure if those are still relevant languages to learn at this point. If anyone has any suggestions, that would be very appreciated.
 

bioloid

Aspiring Fan
Apr 8, 2018
62
57
Maryland USA
I'm still a student so I'm not that pro either, but I can program in C, C++ and Java. I'm the most familiar with C though because I work with microcontrollers a lot. I've been trying to selfteach Python and Javascript as well, but I'm not sure if those are still relevant languages to learn at this point. If anyone has any suggestions, that would be very appreciated.
Both Python and Javascript are VERY relevant; you should try to learn them.

Python is very beginner friendly. By design, it's almost like writing pseudo-code. This is a blessing and a curse.

Javascript is mostly known as the language of web browsers. Many programmers confuse it with that. Stripped of its browser baggage, Javascript is a very simple and powerful language. I would suggest NOT learning it in a browser context. Install node.js instead and learn it there.

As far as other languages, I would suggest Swift and Go (and to a lesser extent Rust). These are modern multi-paradigm languages that try to rein in the unsafe/undefined behaviors of C and C++, while still giving your programs the speed of C/C++ programs. You can program procedurally as in C, or object-oriented as in C++ (but with more sane object models), or functional like in more academic languages like Scheme or Lisp. (Functional programming is extremely powerful and inherently safe, but requires very smart compilers to be efficient.) And you are free to mix and match these paradigms as you please.
 
Last edited:

Jerrybibo

ボカロ廃人
May 31, 2018
17
Hey there :) I do too much Python that I would consider it unhealthy. I am proficient in the bunch of HTML/JS/CSS (although not node.js), Java, and Swift.
I can read most C suite languages and probably understand the majority of it, although I've never gotten the chance to actually dive in since I don't see a practical use for it; I would just do Cython at that point.

Learning Python is a great decision; StackOverflow's 2018 survey reflected that Python is the most wanted technology of the year among developers.
 

maple

russian translator
Apr 18, 2018
69
Russia
I know C for MS-DOS (Turbo C 2.0). Now I plan to learn C++ for MS-DOS (Borland C++ 3.1), Visual Basic 5 and Visual C++ 6 (Windows 95).
Really I knew them too... 15 years ago. And regularily read my teachbooks of them. So I wouldn't say I forget them. Not at all.
 
  • Like
Reactions: Jerrybibo

maple

russian translator
Apr 18, 2018
69
Russia
I begin to read textbooks of Visual C++ 7 and Visual Basic .NET today. As I see, they are not true textbooks as they have lots advices but few theory materials. Learn programming, though.
 
I really really want to get into programming, but I have so little free time.
Same. And too many hobbies.

I heard JavaScript was the easiest language to start with but I might be wrong.

Quick question for programmers: What language or other things should I use to add sound effects to a touch or push sensor?
You know, like those plushies that sing Christmas songs when you push a button on their arm.
 

Jerrybibo

ボカロ廃人
May 31, 2018
17
@ZAR-PARTY You probably should consider using an Arduino (requires the Arduino Programming Language; awfully similar to C) or a Raspberry Pi (use whatever suits you; but setting it up requires basic computer knowledge). Arduino comes with the benefit of a simpler IO interface, although it might still be tough for starters to begin physically interfacing with an Arduino.

JavaScript is probably one of the easier languages to start and there are plenty of jobs available for front-end developers in JS and SQL technologies, but... they aren't usually very well-paying. More like an entry-level job. Here's CFM's job posting for a HTML/JS/CSS front-end programmer: デザインからコーディングまで担当!当社のWEB制作を担うデザイナー募集 by クリプトン・フューチャー・メディア株式会社
If you get in I'll be forever envious of you (until I get a job at CFM). lol
 
@ZAR-PARTY You probably should consider using an Arduino (requires the Arduino Programming Language; awfully similar to C) or a Raspberry Pi (use whatever suits you; but setting it up requires basic computer knowledge). Arduino comes with the benefit of a simpler IO interface, although it might still be tough for starters to begin physically interfacing with an Arduino.

JavaScript is probably one of the easier languages to start and there are plenty of jobs available for front-end developers in JS and SQL technologies, but... they aren't usually very well-paying. More like an entry-level job. Here's CFM's job posting for a HTML/JS/CSS front-end programmer: デザインからコーディングまで担当!当社のWEB制作を担うデザイナー募集 by クリプトン・フューチャー・メディア株式会社
If you get in I'll be forever envious of you (until I get a job at CFM). lol
Thanks, I will definitely look into that! I mean... I have Vocaloid, I have electronics stores, I know where to get bootleg plushies...

Nah, I already have a good job besides school. I don't consider to get a programming job for the next few years.

A job at the creators of my waifu? Fine! Now I only need Japanese language skills.
 
  • Like
Reactions: Jerrybibo

maple

russian translator
Apr 18, 2018
69
Russia
Hello. I want to study how to create console applications under Visual Basic .NET (first version of beginning of this century). Do you know where to read a manual about it? Please help.
 

up2up

VocaDB App Developer
Jun 3, 2018
2
Bangkok, Thailand
Mostly I work with Java for now. But for me it depend on requirement or hirer. Any language is good for me as long as I got money from its. :kaito2_move:
 

Users Who Are Viewing This Thread (Users: 0, Guests: 1)