DEV Community πŸ‘©β€πŸ’»πŸ‘¨β€πŸ’»

Spyros Argalias profile picture

Spyros Argalias

Front end developer specialising in JavaScript and React. Experienced in all aspects of modern front end development. Passionate about making accessible, secure and performant software.

Work

Front end engineer at Programming Duck

Last 250 comments

Meme Monday!

XD

🌱 When did you really start learning to become a "software engineer"?

I started feeling like a proper software engineer after I lea...

Git Organized: A Better Git Flow

Fair enough. I think both points of view have valid points. I...

Git Organized: A Better Git Flow

They're good points, but I only half agree. If you're great ...

Git Organized: A Better Git Flow

Very nice post. I use this process as well. The only step I ...

Should I ever have a role="button"?

Nice post. Thanks for pointing out this niche case.

Nulls and null checks - How to work safely with nulls in any codebase

Thanks for the clarification. I modified that section to ment...

Nulls and null checks - How to work safely with nulls in any codebase

Hmm, thanks for raising that point. To make sure I'm understa...

Nulls and null checks - How to work safely with nulls in any codebase

Hey, thanks for the suggestion. The optional chaining operato...

People disable javascript in their browser? 😱 Give 'em something to cry about!

Lol, I love it. I'm gonna start using these tips in productio...

Exceptions vs error values

Thank you!

In defense of CSS

I agree with your points... At the end of the day, CSS is our...

Underrated React Hooks you’re missing out on

Nice article and use cases. Thanks!

does anyone know how to add seo tags n dynamic site in which database is taken from firebase ??

It depends. By using Firebase I'm assuming it's a front end a...

What are the differences between the following two methods?

First one is a default export. You can import it in another f...

Best practices for error catching and handling

Agreed. It's a stylistic choice and sometimes promises are cl...

Easy console.log() inside one liner functions

Nice, the comma is the one I've always used

Error recording - How to record errors in your application to debug later

My pleasure :). I agree. That page in particular is one of m...

Error recording - How to record errors in your application to debug later

πŸ‘

Error recording - How to record errors in your application to debug later

I see. Yeah I can see some uses for that. Is it things like:...

Error recording - How to record errors in your application to debug later

So I had to think about it a bit more, and I was hoping you c...

Error recording - How to record errors in your application to debug later

Thanks for the explanation :)

Error recording - How to record errors in your application to debug later

Thanks for mentioning those points. Rate limiters are a reall...

Where is the limit of your ethics? Where would you draw the line?

Lol, yeah same I had the same issue with checkbox and they as...

Where is the limit of your ethics? Where would you draw the line?

Interesting question. For me, personally, it's the legal limi...

Opera pianist looking to get into coding!

Hi Natasha. No worries, your wording is fine. Sorry another e...

Opera pianist looking to get into coding!

I don't have personal experience with bootcamps, but from wha...

You (probably) don't need that useState + useEffect

Nice article, thanks

Why Jest is not for me

Good article, thanks. I agree with most of it. I agree with ...

How would you refactor this JS function?

I see, sorry for asking and for misunderstanding. Good point...

How would you refactor this JS function?

I know there's no iteration in the original example. In my an...

How would you refactor this JS function?

The solution was just an example of how you can remove the Bo...

How would you refactor this JS function?

Good suggestion :)

How would you refactor this JS function?

Solution to this question For this particular func...

React Project Architecture

Great post, thanks

Commenting Code | Good Practices

Completely agree. I consider "comments as documentation" good...

Have you tried functional programming?

I haven't tried full-on functional programming with monads an...

Clean Architecture on Frontend

Loved the article, thank you. I'll examine it more over the y...

Do you agree with intrusive time tracking software?

It's as you said. It makes you feel anxious. If you feel anxi...

Coding so far.

Congrats, keep it up! :)

What keeps you motivated to write?

I want to help other people become better programmers. Parti...

Callback hell OR try catch hell (tower of terror)

I agree. Also, if your next function happens to depend on res...

What's your best PR etiquette tip?

Very nice. Yeah automating the little stuff makes everything ...

What's your best PR etiquette tip?

I agree. I've started using conventional comments lately and ...

Day 3: Why is JavaScript so...savage ?

JavaScript isn't too difficult of a language. But anything ca...

What's your best PR etiquette tip?

Nice. I think it's good to have trust that your colleagues ar...

What's your best PR etiquette tip?

Be very polite. Remember that people are sensitive and gettin...

WAO: How do you get promoted?

When they say, you've got one years experience 10 times, keep...

WAO: How do you get promoted?

:D

Developers do silly mistakes...

It's the nature of things. That's why we have so many error c...

What is the Virtual DOM? (Let's build it!)

Yeah I gotcha. That's all good, as I said I still think it's ...

What is the Virtual DOM? (Let's build it!)

Hey, I enjoyed the article. I also agree with the points you ...

Clean code & programming principles – The ultimate beginner’s guide

Thanks a lot for the kind words and for sharing! :)

Clean code & programming principles – The ultimate beginner’s guide

Nice! Yes Unsplash is really awesome and animal pictures can ...

Clean code & programming principles – The ultimate beginner’s guide

Thanks for the reply. I agree with tests and I'm a big propon...

Clean code & programming principles – The ultimate beginner’s guide

Thanks for the comment @tilkinsc . I actually have a stance ...

Clean code & programming principles – The ultimate beginner’s guide

Thank you @ritaoportunity :)

10 Storybook Best Practices

Nice article. I liked the points. Thank you.

Clean code & programming principles – The ultimate beginner’s guide

Thank you, my pleasure :)

Clean code & programming principles – The ultimate beginner’s guide

Thank you very much. I'm glad it was helpful :)

Clean code & programming principles – The ultimate beginner’s guide

Thank you :)

Clean code & programming principles – The ultimate beginner’s guide

Haha, thanks very much Cooper. I'm sure the article you're wo...

Clean code & programming principles – The ultimate beginner’s guide

Thank you very much Enmanuel. I really appreciate that :) I ...

I think there is too much to learn in programming

There is too much to learn, but the same applies in any indus...

Censorship on DEV Community 😢🀐

Yeah, it seems like they contradict at some level. Also, int...

Censorship on DEV Community 😢🀐

I think what you do is very good. I also leave almost all com...

Censorship on DEV Community 😢🀐

I seem to have an unpopular opinion on this, but I think it's...

How much time do you spend writing tests?

I think I spend sufficient time writing tests. Testing is the...

How to make accessible websites - The ultimate guide

Thank you very much :)

πŸ€·β€β™‚οΈ W1y d2s a11y h2e to be so b4y c9d a1d i10e? πŸ‘Ώ

My pleasure. Those are just some thoughts for now. I'm intere...

πŸ€·β€β™‚οΈ W1y d2s a11y h2e to be so b4y c9d a1d i10e? πŸ‘Ώ

About the a11y, I personally prefer "accessibility". ...

In defence of daily stand-ups

Agreed. I agree with your evaluation of the problem and the s...

How do you decide subject for your next DEV article?

Meme: "You don't have to worry about what to write next, if y...

On the usefulness of `git rebase`

I agree that git rebase isn't always needed. I think it depen...

βœ”||🀒 Commit or Vomit | function currying πŸ›

Currying on its own is simply a way to do partial application...

βœ”||🀒 Commit or Vomit | function currying πŸ›

This is an enjoyable series, keep it up :). Vomit. At first...

How to write clean code units (functions and methods)

Thanks very much for the kind words Cooper. Haha, I definitel...

How to write clean code units (functions and methods)

Thank you very much :)

How to write clean code units (functions and methods)

Thank you very much :)

TDD Practicality

Good example, thanks :)

TDD Practicality

Nice yeah, seems like we have similar thoughts indeed :).

TDD Practicality

Thank you :). In general I do TDD whenever I can (assuming I'...

TDD Practicality

Other responses have already touched on the value of testing,...

A shocking story about web development from the future 😲

That was hilarious and informative. Thanks :)

Does TDD help you to write more SOLID code?

I like the question :). My view is that TDD and SOLID aren't...

βœ”||🀒 Commit or Vomit | code style

I agree with this + using brackets when appropriate.

Which CSS pre-processor? Or just postcss?

SCSS seems to be the most popular option. I highly recommend ...

Code Review: You don't want your PR approved

Nice article and good points. Thank you.

Matching elements with selectors in JS

:(, sorry you lost days on this. Yeah in my experience polyfi...

Start learning a new language or go deeper with Java

That's cool. It's great that you want to improve. First of al...

Solid. Is It Still Useful In 2021?

... I initially started by writing an answer that they are re...

What are the top 5 things you consider while reviewing a code?

Good question. Please share your top 5 as well afterwards :) ...

If (all) else is complicated, switch to switch?

Fair point lol. Off the top of my head I use them sometimes t...

If (all) else is complicated, switch to switch?

I think it depends. If it looks cleaner to you and your team...

Whenever we see (d) => setData(d), what can we think about?

Fair point. You have to be careful when the number of argumen...

Whenever we see (d) => setData(d), what can we think about?

Yes, completely agree. After getting used to functional progr...

Should I use Testing?

Welcome, nice to have you here :). Well, one of the benefits...

Can "good code" be measured?

I'm not sure if the question is asking how a programmer can m...

As a developer how do you guys deal with being asked to β€œassist” for a while with tasks that aren’t really software development?

It all depends. For the most part, as a developer you should ...

Why you must know about web accessibility

Hi Graham, Thank you. I'm sorry for the unfortunate welcome....

Why you must know about web accessibility

Hi InHuOfficial, There may not be technical guidelines about...

Why you must know about web accessibility

Hey InHuOfficial, Thanks very much for the kind words and th...

Why you must know about web accessibility

I'm looking forward to an answer from InHuOfficial, but I'll ...

How to measure/determine the quality of the CSS code?

As some of the previous answers mention: Low specificity se...

Styling vs Scripting. Which one is the hardest to learn/control?

I think they're both very difficult because of how much there...

Need assistance with useEffect() dependencies

Unfortunately I found it a bit hard to tell what's wrong beca...

Comments Are The Only "Code Smell"

Very nice article with great points. Thank you :)

🚨How did you start your business?🚨

Thanks very much! Yes, maybe working hard and growing slowly ...

What is your experience with Storybook?

No problem. Configuration For setting it up, I fo...

🚨How did you start your business?🚨

Business is hard (at least for me)... Got a few: soundflo...

What is your experience with Storybook?

I mostly love it. The good: Awesome development environmen...

What social media accounts are worth it for developers in 2020?

LinkedIn - For professionals. Everything else is optional....

Myths about self teaching that need to be busted

All good points.

Do you like to drink coffee or tea more?

I very rarely drink either, but when I do I'm more likely to ...

Should i end my function code, with a return?

There isn't really a short answer to this question. It depend...

Do you write tests when exploring a new idea?

Fair enough. I think restarting or refactoring the prototype ...

Do you write tests when exploring a new idea?

It all depends. I would categorize "exploring ideas" as "prot...

Is git commit --amend truly *important*?

In this specific case I don't see a downside of using git com...

Clean code or not clean code that's the question

I like all the tools you listed. I like to use everything pos...

What does your study routine looks like?

When I was more of a "junior developer", I used to study and ...

What are the differences between unit tests, integration tests, e2e tests, and acceptance tests?

Unit tests, integration tests and even acceptance tests or en...

What shared hosting providers have you tried?

I use Dreamhoster at the moment and I like it. I've also used...

Crossposting

I'm not too sure unfortunately. What I do know however is th...

Are you a "confident" developer?

I've become more confident over time. Over time I've been abl...

Operators/Conditional statements: if (youUnderstand) {'Great!'} else {'Read on'}

Hi Laura, thanks for the great article. It's quite thorough a...

Why do we write JavaScript like this?

It's about readability and understandability. I never aim to...

Convince me to use SQL

I thought MongoDB was ACID-compliant now mongodb.com/. "Distr...

How to learn web application security

Thanks, sounds like a good tip for showing the consequences i...

How to learn web application security

I've only used things like TypeScript, ESLint and SonarQube. ...

Supposed to be a senior developer but feeling like fake and junior

Yeah that sounds awesome, great suggestion.

Supposed to be a senior developer but feeling like fake and junior

You're definitely not a lost idiot. Programming is serious wo...

Supposed to be a senior developer but feeling like fake and junior

The degree is not important. I've met people with degrees and...

Tens of thousands of $$$ lost because of a simple bug! How to tackle failures as a dev

Good article, thank you. Some very key points. I particularly...

Why Code Reviews Shouldn't Exist

I pretty much agree with all the points you've made. But I wa...

Stop setting the language of your website based on user location

Agreed.

Stop setting the language of your website based on user location

OMG, I actually laughed when I read your comment... That's qu...

Is it worth to use JQuery for beginner Javascript developers?

I would say no. Today (as far as I'm aware) JavaScript can d...

JavaScript Map is getting upsert!

Very nice :). Looks quite convenient!

How to learn web application security

Looks good thanks!

Stop setting the language of your website based on user location

I agree that setting the language based on browser preference...

Is the Tailwind approach a big step forward for CSS or just-yet-another-thing?

To answer the question: I think Tailwind is here to stay. I p...

What other languages should JavaScript web developer be familiar with in order to stay on the forefront of his craft?

Depending on what you do or specialise in you may need to kno...

The *New* Sass Module System

Thanks for the update.

do YOU sprint

It can be harder. In the end, like you mentioned in your comm...

Question: Is this a terrible idea?

I don't see a big problem with it. If you and your team are h...

do YOU sprint

In a large company, I 'sprint'. I think it's to the benefit o...

When using multiple JS classes which is a better way of writing code?

In the places where I've worked using JavaScript we've tended...

What are some of your hobbies outside of coding that have directly or indirectly helped your dev work?

One of the obvious ones: Light exercise a few times a week. ...

How to learn web application security

Thanks!

How to learn web application security

Thanks!

The Contentious Art of Pull Requests

I love it, really great points. I think that where I've worke...

How to learn web application security

Completely agree :)

How to learn web application security

Thanks for the suggestion

How to learn web application security

Thanks for the suggestion!

Variables names don't need their type

I agree ;)

Don't aim for 'Senior'

Yeah I agree. I think it's good to see what jobs require a...

React long Components

Yeah, I think this is the right answer. If you were making...

Newbie Problem - What to learn next?

I think it's fine to try out a few things at some point and...

Hit me with a good rant

I have a strong love/hate relationship with many things abo...

How to Learn Web Development

Nice thanks, glad you found it useful!

Daily Developer Jokes - Tuesday, Apr 7, 2020

Damn... I actually found this hilarious, nice! XD

I Need a Task Manager -- what do you recommend?

For me it depends on what I'm doing. Personal task managem...

High Order Components (React)

They're useful for reusing logic. For the sake of example,...

What does event.waitUntil do in service worker and why is it needed?

According to the MDN docs on ExtendableEvent.waitUntil() it...

Can You Really Forget The Simple Things?

I think you always forget little details. However anything ...

Please be professional and stop saying "I'm almost done!"

Nice article, thanks!

RxJS Best Practices

Was this a small mistake? const result = const result = num...

How to make good Git commits

Agreed. This is my goto as well. I find it much easier for ...

Know more about function in JavaScript

Hmm... I think from the previous replies I've given you sho...

Know more about function in JavaScript

So in this program we're not receiving results or returning...

Help, Please.

Of course. When I first started out I didn't really have a ...

Know more about function in JavaScript

Sorry but I don't fully understand just from the descriptio...

First post : help!!!!

Hi Omid, nice to have you here. Some generally recommended r...

Help, Please.

Hi. You are definitely not too old. I started programming f...

User Authentication, In 2020

Thank you, that was a good read. I wasn't aware of password...

Know more about function in JavaScript

Okay so you know what to do to make it work, but not why th...

Code Smell: Selector Arguments

I like it and I generally agree. In the end readability is ...

How do YOU debug

Yeah I use git bisect rarely, it can be quite good :). Ah ...

How do YOU debug

Front end here so we don't tend to keep logs. 95% of the t...

anyone interested in the following because I want to write on it

My own thoughts: There are probably hundreds of posts here ...

Recursion JS

Sorry, I can't explain how it works in depth as it's a very...

Struggle with React and unit tests

According to the documentation, the end result is that the &l...

Which issue tracking tool you people using?

JIRA: I use it at work. Probably my favourite for software ...

let vs const - Let's discuss.

constant for all. It's useful information to the developer ...

Should I use Redux?

Redux just moves your state management to a separate place. I...

Do you like interactive tutorials?

Yes I personally would have liked it a lot better as a tuto...

What is your roadmap in your selected programming language?

I constantly have a learning plan that I revise whenever I ...

Do you like interactive tutorials?

In my opinion they are at best okay. Maybe 6/10 for the bes...

Return early

Nice post. Agree with everything you said and have the same...

Things i learnt from best programmers around me

Nice tips, thank you.

What I did once I got my first high paying engineering role

Love it, very well done! It amazes me how most people don't...

Mar. 13, 2020: What did you learn this week?

Service workers. A little bit complicated with their 3 step...

C# switch - Which variation do you prefer?

Very nice post. My preference matches the exact order you ...

QA Vs Developer: Whose responsibility is to do appΒ testing?

It is the responsibility of the developer to ship code that...

πŸ‘¨β€πŸš€ Client side only! How far can we go? πŸ‘©β€πŸš€

Very interesting. It's cool to see use cases like this. As...

RxJS - Simplifying Complex Operator Chains

Completely agree. I usually do this technique, and not jus...

Why code changes are error prone

That's right. A good test suite is the best defence.

Name a DESIGN PATTERN and WHY u use it πŸ˜€ ?????

I... Love the observer pattern. I just find it so satisfyi...

Why code changes are error prone

Nice article, thank you. I liked the part where he said "wh...

Let’s talk video vs article when learning

Nice, hope it goes well :). I hadn't heard of that website ...

Let’s talk video vs article when learning

Personally I find videos far better for complete courses. E...

Why code changes are error prone

Definitely. Thorough testing can catch bugs. Ideally automa...

Ignoring performance

Interesting questions. From one point of view, I think you...

Code navigability?

My favourite solution is to have component based folders if...

How to test exceptions in Jest

Nice. Just want to chip in to say we can skip the wrapping...

Recursion in daily programming!

I like the article, but I just wanted to add that we need to ...

Is it true that components in a ReactJS app should be divided into container components and presentational components?

As you said, it is completely optional. There are two reason...

Declarative Programming

You make good points, and I completely agree, but let me be...

5 awesome css resources

I would add MDN. The tutorials there taught me CSS better t...

Declarative Programming

I didn't really understand what declarative programming meant...

Do you code Games?

I suppose I coded a few games for practice as a beginner de...

Does Code QualityΒ Matter?

Very nice post. Indeed code quality definitely matters for ...

How to implement test driven development in the real world?

*I added a quick edit above about the CI/CD issue.

How to implement test driven development in the real world?

Okay fair enough. Yeah I guess the example you gave didn't ...

How to implement test driven development in the real world?

I think it depends. However I'm not so sure about the parti...

What makes for readable code?

In short: Care about your work. Try to make your code reada...

Does documenting feel productive?

There is definitely value in writing documentation. Documen...

How to implement test driven development in the real world?

Firstly, I second the recommendation for Kent Beck's book m...

Programming first principles - 9. First principle - Principle of least astonishment

Thanks a lot! Glad you liked it :)

πŸ”₯ How to merge a pull request

Thanks very much. That's already what I use ;). Highly reco...

What is your everything files or folders naming convention ?

I personally use camel case for most things, or pascal case...

πŸ”₯ How to merge a pull request

Wow. This is a really good strategy. Very nice tip, thanks!...

The fact that I barely know how to use git has been biting me in the butt a lot lately 😭

Sorry, I know this is a month old post... Reading through ...

What's wrong with Egghead.io?

Personally I recommend the following: Udemy Great for begin...

How do you keep up With fellow developers who are always bragging about themselves ?

Hmm... Interesting question. I've only dealt minorly with ...

Why I'm phasing out ternary statements

Personally I wouldn't use if / else statements for assignme...

A classic interview question

Nice :)

A classic interview question

That's right. That's what we're testing for: whether they a...

A classic interview question

Good effort, but unfortunately this solution doesn't always...

Know when to fold 'em

Yeah good points. Tools and features are there to help us, ...

Why you should use semantic naming in CSS

Yeah perfectly good suggestion, thank you. You've got some ...

Why you should use semantic naming in CSS

Yes exactly, Tailwind CSS is doing the opposite. Personally...

Why you should use semantic naming in CSS

That's a nice article, thanks for linking it :). Some great...

How many monitors do you use when programming?

Legitimately use 5 currently. Looking to get a 6th one. Have...

Matching elements with selectors in JS

Yeah you need to include the Babel polyfill properly. Haha...

Matching elements with selectors in JS

Good post! And if you need to support IE11, the polyfill is ...

What does your Terminal look like?

Takes up the full screen, split in 4 Server | Tests Cypres...

What are your favourite dev resources?

References / learning: MDN - Go to resource for anything...

loading...