|OT| Programming - Swiftly put that C in your java!

Monooboe

0,60% PC Gamer 100% Xbox Bro
Oct 10, 2018
4,616
9,540
113
41
Paris, France
perttiteurajarvi.com
So thought we should have a programming thread!

I'm a total noob and pretty much just took a basic C course but I want to learn and I thought a good way would be to do small apps for myself that do simple things:

For example I need to do an app that takes a photo and just adds white border to it and then spits out a new jpeg. I assume something simple like that can be done pretty much with all languages but which one would be the easiest and smoothest one to do simple apps like that?
 
  • Like
Reactions: lashman

lashman

Dead & Forgotten
Sep 5, 2018
19,331
44,325
113
For example I need to do an app that takes a photo and just adds white border to it and then spits out a new jpeg. I assume something simple like that can be done pretty much with all languages but which one would be the easiest and smoothest one to do simple apps like that?
how about C#?
 
OP
Monooboe

Monooboe

0,60% PC Gamer 100% Xbox Bro
Oct 10, 2018
4,616
9,540
113
41
Paris, France
perttiteurajarvi.com
how about C#?
Ah yes it was going to be the next course I would do at pluralsight but the free month ran out! I'm sure there are alot more free ones out there, will check it out!

Its easier than C++? While I understood the basic flow of it, I have no idea how to even begin to make something of my own.
 
  • Like
Reactions: lashman

Copons

MetaMember
Nov 12, 2018
395
972
93
Brighton, UK
copons.wordpress.com
Yay programming!

Monooboe I guess to do stuff with images, and without the overhead of having to compile and stuff, PHP is also a good choice.
At least, I know PHP, I use PHP all the time, PHP was the first language that came to mind. 😄

Anyway, I've been mostly a JS programmer for a long time now, and I utterly love it!
Modern JS + React + Redux is just amazing to use.
I've had a few MINDBLOWN moments in my career (which is starting to be rather long!), but none of them brought me as much joy as learning to use Redux (which has a rather awkward learning curve), and React hooks!
Using React hooks = OMG I CAN DO ANYTHING I WANT AND IT'S SO FUCKING EASY! Love it.
 

QFNS

Plays too many card games
Nov 18, 2018
581
1,115
93
In college I used Matlab to process videos and do (really shitty) face detection. So that's even an option.

But yeah the language you choose is almost secondary to what you want to do. You can probably do anything in any language if you are willing to work hard enough.
 

Copons

MetaMember
Nov 12, 2018
395
972
93
Brighton, UK
copons.wordpress.com
What editor do you guys use? For webstuff I used to use Brackets but for coding it seems Visual Studio Code is pretty great.
Visual Studio Code.
Most of the time it works as I expect, and doesn't get in the way too much.

Previously, Atom, then Sublime, then who knows, Coda maybe? But we're talking so many years ago!
Started with Dreamweaver when it was still a Macromedia product! 😅

Most of my colleagues use VS Code as well, to the point that we are starting to write documentation for environment setup specifically for it, which is peculiar since we have absolute freedom of using whatever tools we like.
Some use PhpStorm, and find it excellent. I could even try it on the company's dime, but its UI looks so damn cluttered!

Oh, also Vim, but my experience is always: search for specific command on Google -> use command -> wait 5 minutes -> forget command.
 
  • Like
Reactions: Monooboe

BlackRainbowFT

Mouse Accelerated Member
Apr 17, 2019
348
785
93
34
Switzerland
Its easier than C++? While I understood the basic flow of it, I have no idea how to even begin to make something of my own.
Oh yes. Way easier. The most significant difference is how you handle memory. With C# you have garbage collection, which is a form of automated memory management.

Unless you're specifically interested in the more low-level side of things, I suggest you focus on more high-level languages so that you can quickly start building cool things.
 

Copons

MetaMember
Nov 12, 2018
395
972
93
Brighton, UK
copons.wordpress.com
How hard is it to get a job even at the entry level?
Imho it really depends on your local market.
It's generally not super hard, though, considering that "web dev" nowadays means an extremely wide range of stuff.

This said, I think that these days with the virus outbreak less companies are hiring, but it's definitely not limited to the tech industry.

On the other hand, many are now dipping their feet in the remote/distributed work.
With any luck, lots of companies will end up appreciating it, and so when things will go back to normal, there'll be tons of new remote opportunities, which means that even if your local market sucks, you'll still have plenty of chances anywhere else in the world, without the hassle of moving away from friends and family.

---

I want to ask the programmers in this thread if The Odin Project is worth pursuing if I want a career in webdev?
I'm not familiar with that specific course, but the current web dev world has a surprisingly steep learning curve, as opposed to when I started, some 15 years ago.
Whereas back then HTML+CSS+PHP were enough and JS was just some shitty language that made sites incompatible across different browsers, nowadays web devs, even just front end devs, are supposed to know A LOT of very complicated stuff.

You need to know your way around the terminal, Node, build systems, preprocessors, transpilers. Then you'll need to know about JS, some frameworks (React, but not necessarily), some way to handle data (Redux, but not necessarily), how to interact with APIs, etc.

I'm lucky enough to have lived through all these changes, so I had years to figure them all out to a professional level.
New devs aren't as lucky, but at least starting now means that most of the confusion has settled, and so y'all (hopefully!) won't end up changing tools every couple of months because a newer shiny thing appeared out of the blue.

What I'm trying to say is: take advantage of courses! Especially if they are free!
I'm sure you'll realize it quickly enough if it's shit, and worst case scenario you'll have lost a few hours.

Also, if you are a sociable person, check out some local meetups, because usually these communities are excellent, very open and welcoming to new people, full of great advices, etc.
In my case, I know for a fact that the WordPress community is amazeball, and my local meetup makes no exception. I know lots of people that started attending as newbies, and ended up being hired by some of the best local companies.
(In other words: networking is really helpful in this industry!)
I realize that with the covid most meetups are suspended until further notice, but a few of them moved to online-only, and kept going on nonetheless.[/QUOTE]
 
  • Like
Reactions: Rando10123

QFNS

Plays too many card games
Nov 18, 2018
581
1,115
93
I work on low level stuff, and my work has relatively limited options in Linux due to contract reasons. So I use Eclipse. It's a memory hog, but it supports basically everything I want from build to version control to execute.
 
  • Like
Reactions: BlackRainbowFT

lashman

Dead & Forgotten
Sep 5, 2018
19,331
44,325
113
Finally started a C# tutorial and I love the feeling in the beginning always when starting learning: "fuck yes this is so easy and makes perfect sense!".
it won't go away :p C# really is that simple
 

EdwardTivrusky

See You Hyper-Toxic Computer Cowboy
Dec 8, 2018
2,926
5,854
113
Monooboe It sounds like a stupid thing to say but keep on commenting the shit out of your code!
I guarantee that at some point you'll know the project really well and start slacking on your comments and then 6 months or a year later when you're on a new thing and remember something cool you did and want to reuse it you'll look at your lazily documented code and wonder what the hell is going on.

Documentation and comments are your friends.
 

Copons

MetaMember
Nov 12, 2018
395
972
93
Brighton, UK
copons.wordpress.com
We are learning javascript right now in the course I'm doing and I always feel so damn lost with programming haha!
Nice!
JS is my (current) tool of the trade, so feel free to ask if you have doubts and whatnot.
I can warmly recommend this book on GitHub, which has helped me a lot in my early years.

I think it's a very cool language, and super fun to use, but it also have a steep learning curve, caused by the absurdly fragmented language ecosystem.

You have several versions of JS (or, rather, ECMAScript) with various degrees of browsers compatibilities, then you have frameworks (React, Angular, etc.), build systems (Webpack, etc.), transpilers (Babel) that let you use cutting edge features and convert them to be compatible with older browsers, etc.

So while the language in itself is relatively easy to learn, using it at a pro level is a massive PITA.
Luckily there are a few no-config bundlers that help (I've used Parcel in the past, but I guess there might be newer and better ones around).


This said, one thing that is very easy to overlook about JS, is that you might not need any of the things I've listed here.
Just open the browser console, type your stuff and hit enter: it will work! 😄
 
  • Love
  • Like
Reactions: Pommes and Monooboe
OP
Monooboe

Monooboe

0,60% PC Gamer 100% Xbox Bro
Oct 10, 2018
4,616
9,540
113
41
Paris, France
perttiteurajarvi.com
Nice!
JS is my (current) tool of the trade, so feel free to ask if you have doubts and whatnot.
I can warmly recommend this book on GitHub, which has helped me a lot in my early years.

I think it's a very cool language, and super fun to use, but it also have a steep learning curve, caused by the absurdly fragmented language ecosystem.

You have several versions of JS (or, rather, ECMAScript) with various degrees of browsers compatibilities, then you have frameworks (React, Angular, etc.), build systems (Webpack, etc.), transpilers (Babel) that let you use cutting edge features and convert them to be compatible with older browsers, etc.

So while the language in itself is relatively easy to learn, using it at a pro level is a massive PITA.
Luckily there are a few no-config bundlers that help (I've used Parcel in the past, but I guess there might be newer and better ones around).


This said, one thing that is very easy to overlook about JS, is that you might not need any of the things I've listed here.
Just open the browser console, type your stuff and hit enter: it will work! 😄
Thanks for the tips! Right now I don't even know what to ask, I'm immensely lost haha.

We have a assignment to do now where we are supped to use everything we have learned up until this point but I seriously can't code without just copy pasting from online.XD It's the same problem I have when I watch tutorials, I understand the code when I see it presented but then to write it I can't at all.
 
  • Hug
Reactions: Copons

Durante

I <3 Pixels
Oct 21, 2018
1,844
8,207
113
Picking this up from the Steam thread.

On a related stupid idea, if I learned a programming language, which one ?
I really don't like Python (for reasons which range from at least semi-objective language-lawyer stuff to mega-nerd nitpicking) but if you wanted to learn a programming language today it's probably a good choice at the intersection of being widespread (which makes googling stuff and finding good material easier), relatively simple to learn, and with a broad ecosystem. Another choice in a very similar vein would be Javascript (with a slightly different set of trade-offs, including dependency and framework hell).

It also depends on what you want to accomplish, e.g. if you want to write desktop applications or games then C# might also be a pretty good first choice as a language.

For starting a more comprehensive CS education I'd make different recommendations (something like C to understand computers and Haskell to understand algorithms), but that's more of a multi-year full-time project.
 
OP
Monooboe

Monooboe

0,60% PC Gamer 100% Xbox Bro
Oct 10, 2018
4,616
9,540
113
41
Paris, France
perttiteurajarvi.com
framework hell
I'm working on a school assignment right now to build a todo list with users that can login and such for our javascript course and I'm so lost trying to figure it all out haha. While much easier than vanilla JS(which I have more trouble with) but now instead I have trouble finding correct way to do things within a framework.
 

Wok

Wok
Oct 30, 2018
2,991
7,704
113
France
I suggested Python because I am used to it, it is nice to work with, and it is really powerful.

However, I have heard a lot of good things about C#, and that should be a great recommendation based on what other people recommended to me back then.
 
OP
Monooboe

Monooboe

0,60% PC Gamer 100% Xbox Bro
Oct 10, 2018
4,616
9,540
113
41
Paris, France
perttiteurajarvi.com
Alright you JS wizards! I feel I keep going round in circles and could love some pointers.

I need to have this flow of events using JS and Axios.
Log in user -> Get Id of that user -> Get todo list for that ID -> Create new entry to the list

Initially I thought I needed to be able to also create a new user but not sure if the API server that we are testing on allows that. I think I can create a new user on the actual site but even there I don't fully get it to work.
 

spiel

Junior Member
Apr 17, 2019
12
16
3
I don't have much to add to the exellent discussion in the other thread, but just wanted to share that in my CS course, this was the typical progression of classes in the first 2 years:
  1. Basic programming with C
  2. Java, OOP, data structures and algorithms
  3. Advanced data structures and algorithms (still Java)
  4. Introduction to software engineering
I appreciate how it builds up our foundational knowledge, but it definitely took a while before I learned how to build a functioning application with a GUI. For a beginner, it seems more motivating to work on something with a tangible end result like excel macros.

Haskell made me cry, the word "monad" still haunts me to this day :cryblob:
 

ganmo

My Neighbour Totoro
Dec 10, 2018
134
146
43
Alright you JS wizards! I feel I keep going round in circles and could love some pointers.

I need to have this flow of events using JS and Axios.
Log in user -> Get Id of that user -> Get todo list for that ID -> Create new entry to the list

Initially I thought I needed to be able to also create a new user but not sure if the API server that we are testing on allows that. I think I can create a new user on the actual site but even there I don't fully get it to work.
I suppose there's no need of security on your assignment? thus your database would be plain text file perhaps, and password would be saved in plain text? If it is important then I would go with some finished libraries for security. Btw do you need to do it in plain javascript? otherwise I suggest using typescript, and as for framework I would suggest using Angular, React or something similar.
 
OP
Monooboe

Monooboe

0,60% PC Gamer 100% Xbox Bro
Oct 10, 2018
4,616
9,540
113
41
Paris, France
perttiteurajarvi.com
I suppose there's no need of security on your assignment? thus your database would be plain text file perhaps, and password would be saved in plain text? If it is important then I would go with some finished libraries for security. Btw do you need to do it in plain javascript? otherwise I suggest using typescript, and as for framework I would suggest using Angular, React or something similar.
Yeah there is no security at all. We are using a API site to handle the data. https://promo1.forticas.fr/api
Right now I can get todos for one specific user but still can't make a user, login a user, create new todo or modify or delete them.XD I'm so far behind haha
Here's my current experimenting, it's pretty much cut and pasting all over the place.

JavaScript:
// CREATE NEW USER
let createUser = e => {
    e.preventDefault();
    axios.post('https://promo1.forticas.fr/api/user', {
            "email": document.querySelector('input[id="newuseremail"]').value,
            "password": document.querySelector('input[id="newuserpassword"]').value
          
            
            
            
        })
        .then(function (response) {
            alert("OK")
        })
        .catch(function (err) {
            console.log(err);
        });
}
document.querySelector('#createuser_submit').addEventListener("submit", createUser)

// LOG IN USER
async function activeUser() {
    await axios.get( 'https://promo1.forticas.fr/api/user/users', {
      auth: {
        user: 'username',
        password: 'password'
      }
    })
  }
document.querySelector('#loginuser_submit').addEventListener("submit", activeUser)



/* async function makeGetRequest() {

  let res = await axios.get('https://promo1.forticas.fr/api/users');

  let data = res.data;
  console.log(data);
}

makeGetRequest(); */


// GET TODO LIST FOR USER
const getTodos = () => {

    let display = ''

    axios.get('https://promo1.forticas.fr/api/todos?owner=42', {
            headers: {
                'accept': 'application/json'
            }
        })
        .then(function (response) {
            response.data.forEach((element, index) => {
                display += `
                <div class="list-group">
                <a href="#" class="list-group-item list-group-item-action">
                <div class="d-flex w-100 justify-content-between">
                <h5 class="mb-1">${element.title}</h5>
                <small class="text-muted">${element.todoAt}</small>
                </div>
                <p class="mb-1">${element.description}</p>
                <small class="text-muted">${element.periority}<small><br>
                <label for="ifdone">Completed</label>
                <input id="ifdone" type="checkbox" ${element.isDone? 'checked' : ''}>
                </a>
                </div>
                `
            })
            document.querySelector('#mainlist').innerHTML = display
        })
        .catch(function (err) {
            console.log(err);
        })

}
document.querySelector('#showlist').addEventListener("click", getTodos)


const nextID = () => Math.max(0, ...todos.map((todo) => todo.id)) + 1;

const addTodo = () => {
    const todo = {
            id: nextID(),
            title: document.querySelector('input[id="todo_title"]').value,
            description: document.querySelector('textarea[id="todo_description"]').value,
            todoAt: Date.now(),
            periority: document.querySelector('select[id="todo_priority"]').value,
            owner: '/api/user/42',
            isDone: false };
    axios.post('https://promo1.forticas.fr/api/todo', todo)
      .then((res) => todos = res.data)
      .then(render)
      .catch((err) => console.log(err));
    
  };


// ADD A NEW TODO
/* const addTodo = e => {
    e.preventDefault();
    axios.post('https://promo1.forticas.fr/api/todo', {
            "title": document.querySelector('input[id="todo_title"]').value,
            "description": document.querySelector('textarea[id="todo_description"]').value,
            "periority": document.querySelector('select[id="todo_priority"]').value,
            
            
        })
        .then(function (response) {
            alert("OK")
        })
        .catch(function (error) {
            console.log(error);
        });
}
 */


document.querySelector('#todo_submit').addEventListener("submit", addTodo)
 
  • Like
Reactions: lashman

ganmo

My Neighbour Totoro
Dec 10, 2018
134
146
43
Yeah there is no security at all. We are using a API site to handle the data. https://promo1.forticas.fr/api
Right now I can get todos for one specific user but still can't make a user, login a user, create new todo or modify or delete them.XD I'm so far behind haha
Here's my current experimenting, it's pretty much cut and pasting all over the place.

JavaScript:
// CREATE NEW USER
let createUser = e => {
    e.preventDefault();
    axios.post('https://promo1.forticas.fr/api/user', {
            "email": document.querySelector('input[id="newuseremail"]').value,
            "password": document.querySelector('input[id="newuserpassword"]').value
         
           
           
           
        })
        .then(function (response) {
            alert("OK")
        })
        .catch(function (err) {
            console.log(err);
        });
}
document.querySelector('#createuser_submit').addEventListener("submit", createUser)

// LOG IN USER
async function activeUser() {
    await axios.get( 'https://promo1.forticas.fr/api/user/users', {
      auth: {
        user: 'username',
        password: 'password'
      }
    })
  }
document.querySelector('#loginuser_submit').addEventListener("submit", activeUser)



/* async function makeGetRequest() {

  let res = await axios.get('https://promo1.forticas.fr/api/users');

  let data = res.data;
  console.log(data);
}

makeGetRequest(); */


// GET TODO LIST FOR USER
const getTodos = () => {

    let display = ''

    axios.get('https://promo1.forticas.fr/api/todos?owner=42', {
            headers: {
                'accept': 'application/json'
            }
        })
        .then(function (response) {
            response.data.forEach((element, index) => {
                display += `
                <div class="list-group">
                <a href="#" class="list-group-item list-group-item-action">
                <div class="d-flex w-100 justify-content-between">
                <h5 class="mb-1">${element.title}</h5>
                <small class="text-muted">${element.todoAt}</small>
                </div>
                <p class="mb-1">${element.description}</p>
                <small class="text-muted">${element.periority}<small><br>
                <label for="ifdone">Completed</label>
                <input id="ifdone" type="checkbox" ${element.isDone? 'checked' : ''}>
                </a>
                </div>
                `
            })
            document.querySelector('#mainlist').innerHTML = display
        })
        .catch(function (err) {
            console.log(err);
        })

}
document.querySelector('#showlist').addEventListener("click", getTodos)


const nextID = () => Math.max(0, ...todos.map((todo) => todo.id)) + 1;

const addTodo = () => {
    const todo = {
            id: nextID(),
            title: document.querySelector('input[id="todo_title"]').value,
            description: document.querySelector('textarea[id="todo_description"]').value,
            todoAt: Date.now(),
            periority: document.querySelector('select[id="todo_priority"]').value,
            owner: '/api/user/42',
            isDone: false };
    axios.post('https://promo1.forticas.fr/api/todo', todo)
      .then((res) => todos = res.data)
      .then(render)
      .catch((err) => console.log(err));
   
  };


// ADD A NEW TODO
/* const addTodo = e => {
    e.preventDefault();
    axios.post('https://promo1.forticas.fr/api/todo', {
            "title": document.querySelector('input[id="todo_title"]').value,
            "description": document.querySelector('textarea[id="todo_description"]').value,
            "periority": document.querySelector('select[id="todo_priority"]').value,
           
           
        })
        .then(function (response) {
            alert("OK")
        })
        .catch(function (error) {
            console.log(error);
        });
}
*/


document.querySelector('#todo_submit').addEventListener("submit", addTodo)
In the part where you get the activeUser, shouldn't you use the actual username/password instead of passing in the string value "username" and "password"?
 

spiel

Junior Member
Apr 17, 2019
12
16
3
Yeah there is no security at all. We are using a API site to handle the data. https://promo1.forticas.fr/api
Right now I can get todos for one specific user but still can't make a user, login a user, create new todo or modify or delete them.XD I'm so far behind haha
Maybe you could elaborate on what you're stuck on. Is it about calling the api, or handling the returned response? Is there an error logged in the console when, say, createUser is executed? It would help with debugging the code.
 
OP
Monooboe

Monooboe

0,60% PC Gamer 100% Xbox Bro
Oct 10, 2018
4,616
9,540
113
41
Paris, France
perttiteurajarvi.com
Maybe you could elaborate on what you're stuck on. Is it about calling the api, or handling the returned response? Is there an error logged in the console when, say, createUser is executed? It would help with debugging the code.
Yeah I need to log in the user and return the ID of that user and with that ID get the todo list. Right now I have hardcoded the id in getting the list but want it to be dynamic depending on the ones who logs in.
 

spiel

Junior Member
Apr 17, 2019
12
16
3
Yeah I need to log in the user and return the ID of that user and with that ID get the todo list. Right now I have hardcoded the id in getting the list but want it to be dynamic depending on the ones who logs in.
Okay, so the id of that user has to be saved in a variable somewhere so that the getTodos function can access it.

Now the problem is getting the user id. You want to get the user id associated to that email.

Looking at the api site, it doesn't seem to have a specific endpoint for that. (correct me if I missed something). But maybe there are other ways.

There's POST /authentication_token to login, but it doesn't seem to return anything useful.
POST /api/user creates a user and returns the user id. But then you'd have to create a new user each time, which doesn't make sense.
GET /api/users returns a list of all the users, and how convenient, each user object has an id. Perhaps you could find the user with the matching email.
 
OP
Monooboe

Monooboe

0,60% PC Gamer 100% Xbox Bro
Oct 10, 2018
4,616
9,540
113
41
Paris, France
perttiteurajarvi.com
Okay, so the id of that user has to be saved in a variable somewhere so that the getTodos function can access it.

Now the problem is getting the user id. You want to get the user id associated to that email.

Looking at the api site, it doesn't seem to have a specific endpoint for that. (correct me if I missed something). But maybe there are other ways.

There's POST /authentication_token to login, but it doesn't seem to return anything useful.
POST /api/user creates a user and returns the user id. But then you'd have to create a new user each time, which doesn't make sense.
GET /api/users returns a list of all the users, and how convenient, each user object has an id. Perhaps you could find the user with the matching email.
I can create an user on the site and all, it should be possible to get an users id, that's what I'm trying to do with the login, and in the get for the todos specify the owner. Right now I'm just using the address to the owner, /api/users/42, 42 which is the ID.

Edit, Right now I use the sorting of the list to only show by owner, like this: 'https://promo1.forticas.fr/api/todos?owner=42'
 

spiel

Junior Member
Apr 17, 2019
12
16
3
I can create an user on the site and all, it should be possible to get an users id, that's what I'm trying to do with the login, and in the get for the todos specify the owner.
Yes. My point is, there should be an api that can give you the user id based on the login (i.e. username or email).

Is https://promo1.forticas.fr/api/user/users a valid url? Again, if you run the code, does it show any errors in the console?
 
OP
Monooboe

Monooboe

0,60% PC Gamer 100% Xbox Bro
Oct 10, 2018
4,616
9,540
113
41
Paris, France
perttiteurajarvi.com
Yes. My point is, there should be an api that can give you the user id based on the login (i.e. username or email).

Is https://promo1.forticas.fr/api/user/users a valid url? Again, if you run the code, does it show any errors in the console?


I think you can get a list of all users with the /api/users address and if you one just one user it's with the api/user/{id}

JavaScript:
async function makeGetRequest() {

  let res = await axios.get('https://promo1.forticas.fr/api/users');

  let data = res.data;
  console.log(data);
}

makeGetRequest();
With that I can get a list of all users in the console.

Just need to figure out how to login and get just one user and its ID that then goes to the getting the todo list part.

When I try to log in, I used to have an alert that it was ok but never got it to work.

JavaScript:
async function activeUser() {
    await axios.get('https://promo1.forticas.fr/api/user/users', {
        auth: {
        email: document.querySelector('input[id="newuseremail"]').value,
        password: document.querySelector('input[id="newuserpassword"]').value
        }
    })
    .then(function (response) {
        alert("OK")
    })
    .catch(function (err) {
        console.log(err);
    });
  }
document.querySelector('#loginuser_submit').addEventListener("submit", activeUser)
 
OP
Monooboe

Monooboe

0,60% PC Gamer 100% Xbox Bro
Oct 10, 2018
4,616
9,540
113
41
Paris, France
perttiteurajarvi.com
In our javascript course we have started with VueJS and using local servers to work on sites. Now things are starting to get interesting! I'm still completely lost with vanilla JS but with Vue I kind of don't feel completely useless!
 
  • Like
Reactions: Pommes

Swenhir

Spaceships!
Apr 18, 2019
2,370
5,558
113
In our javascript course we have started with VueJS and using local servers to work on sites. Now things are starting to get interesting! I'm still completely lost with vanilla JS but with Vue I kind of don't feel completely useless!
I have a horrified memory of JS where functions had literally no way to be called by name. You'd reference them from the order in which they were written in the code. I'm pretty sure that something was wrong somewhere but that has given me a rather terrified outlook of web development things.
 
OP
Monooboe

Monooboe

0,60% PC Gamer 100% Xbox Bro
Oct 10, 2018
4,616
9,540
113
41
Paris, France
perttiteurajarvi.com
I have a horrified memory of JS where functions had literally no way to be called by name. You'd reference them from the order in which they were written in the code. I'm pretty sure that something was wrong somewhere but that has given me a rather terrified outlook of web development things.
Yeah sure you have an oder to things, but you can name functions and call them! But yeah vanilla JS is a pain for me too.
 

Swenhir

Spaceships!
Apr 18, 2019
2,370
5,558
113
Yeah sure you have an oder to things, but you can name functions and call them! But yeah vanilla JS is a pain for me too.
I do recall that naming them had no effect on the calling method, but that was way, way back too :). It was indeed vanilla JS, but I think we should call it something else because vanilla implies a level of goodness, and this was an abomination.
 
  • Like
Reactions: Monooboe