|
Another benefit to writing your own logging code is that you can make it uniform across all your systems.
|
|
|
|
|
Yep! It can be a challenge. It helps if you can find a work buddy to help you through the tricky stuff - as this definitely saves a lot of time. On the downside, if your "buddy" is doing it the wrong way, you just learn bad practices. Which, pretty much, is the story of my .Net/c# learning curve: quick, but rubbish!
|
|
|
|
|
Maximilien wrote: with gazillions npm packages And therein lies the problem.
Certainly on the front-end, I refuse to use packages. Yes, there are the occasional exception to that rule, but when it comes to any of these krufty overly "crafted" front-end frameworks, they can all burn in the dumpster fire as far as I'm concerned.
So, no, I'm not overwhelmed with new technologies. Whenever I ask "why should I use this?" the answer is quite simple: nobody, not my fellow developers, nor anyone here, not the websites themselves (which always fail to answer the "why" question) can give me a good answer. So I simply don't use them.
And being able to say "I only do back-end work", I can leave all that "craft" to others, because I have absolutely no intention of ever learning any of it.
And I quite enjoy doing front-end development in TypeScript for my own projects, mainly because I'm not pulling my hair out.
|
|
|
|
|
Sadly, I don't think you're going about it the wrong way.
I ran into the same mess, and I thought it was because I was deliberately avoiding web work (which I was) and that the industry had moved on without me (they did), but it's more than that.
There is so much "web" out there now, that the # of technology stacks exploded. Elephanting exploded.
That's what it looks like to me.
I'm sure that there are currents in this sea you can swim if you look - you're actually stuck with a stack you were given though.
I can't help you learn this stuff, nor really point you to resources very well, because I'm in your same boat in terms of my lack of exposure, and also I don't learn well with courses and books. I dive in and google my way through problems these days. People mock the googly coders, but what can I say, it's just faster for me that way.
All I can really say is best of luck with this.
Real programmers use butterflies
|
|
|
|
|
The worse part is I don't know what to google for.
Most of the time it returns stuff with different technologies/toolkits.
CI/CD = Continuous Impediment/Continuous Despair
|
|
|
|
|
I stay away from anything 'new' for professional development. I'll wait until it becomes mature enough to have an established knowledge base.
I am a team of one and have no use for github or npm packages...the closest to this I've come is jquery and even then, refuse to allow external links/resources.
"Go forth into the source" - Neal Morse
"Hope is contagious"
|
|
|
|
|
When do I know it become mature enough ?
HTML/CSS/JavaScript seems very mature.
TypeScript seems to also be very mature and well adopted.
Vue (in this case) also seems to be well adopted.
CI/CD = Continuous Impediment/Continuous Despair
|
|
|
|
|
Maximilien wrote: HTML/CSS/JavaScript seems very mature.
I don't consider these to be 'technologies' but rather the essential building blocks for creating web pages. It's mostly the server-side part of things (the part that actually puts these blocks together and works with the database) that I consider as 'web technologies' or frameworks, oftentimes connected with it's own language. Examples:
0: ASP.Net
1: PHP
2: Angular
3: Node
4: React
All of these are mature and have tons of resources so I wouldn't hesitate to learn any of them if there was a need. I've been doing web development for over 20 years and started with classic asp. The only web platforms I use these days are ASP.Net (heavy) and PHP (moderate).
Maximilien wrote: When do I know it become mature enough ?
You know when a google search on it returns more than a dozen results.
"Go forth into the source" - Neal Morse
"Hope is contagious"
|
|
|
|
|
You don't need to use github, but even in a team of one git makes sense. You can use your locally installed TFS server for that. Source control really brings value to the development and the power of git branching is second to none.
As for npm packages, if you use any web framework, like Angular, there's no way around it.
Is it more complicated than it used to be? Yes, no doubt about it. Messier? Heck yes. Impossible? Nope. I'm in my mid fifties and working with a team on average 20 years my juniors. I can still keep up... I assure you they're not immune to these things. The issue with most of them is that they don't have a reference point in the past, to judge things in perspective. The current tech and work style is all they know and they believe it's the best. As a result they over-complicate things. There will be dependency injection, services and all that good stuff even if they have to write a simple console app to load a file...
|
|
|
|
|
The only writers I bother with are the ones that limit themselves to HTML, CSS, and JavaScript; and rave about it. Mind you, I only have to answer to myself.
"Before entering on an understanding, I have meditated for a long time, and have foreseen what might happen. It is not genius which reveals to me suddenly, secretly, what I have to say or to do in a circumstance unexpected by other people; it is reflection, it is meditation." - Napoleon I
|
|
|
|
|
Maximilien wrote: I'm overwhelmed with new technologies I like the pocket guides and references by O'Reilly[^]. For me they're much better than the mammoth tomes that pass for programming books these days. The other problem with BIG BOOKS is that they are organized according to the author's bias to the material. Features that they don't like or don't understand don't get a lot of attention. Stuff they do like and understand they use only in their preferred style.
The guides provide a concise survey of the technology and its syntax. I currently have their books for HTML5, CSS, JavaScript, jQuery, HTTP, and SQL on my shelf. They occupy a little under 3 inches of space. If I need more detail or depth, Google[^] and CodeProject[^] are my friends , and Stack Overflow[^] is a reluctantly, occasionally, and necessary evil .
Software Zen: delete this;
|
|
|
|
|
I haven't had an issue with html, css*, or javascript/typescript, but I've never used Vue. Angular has some really good documentation in my opinion. I don't have much experience with React but it seemed... alright. There's a lot of "magic" under the hood though which was confusing since you absolutely need to understand how it works for all but the simplest tasks.
I feel you though. A lot of documentation seems to be written for the author rather than the reader. It's a problem I've run into with learning functional programming. Once you get past the beginner stuff, most of the resources are written for people that already understand everything. You have to have a Master's in type theory, set theory, group theory, category theory, nth-order logic, and more just to parse the terminology in a single sentence.
*: Except for layouts. Good lord, we have tables, box, flex-box, grid, etc and none of them aptly solve the issue without "clever" hacks half the time.
|
|
|
|
|
Jon McKee wrote: Once you get past the beginner stuff, most of the resources are written for people that already understand everything. This is still a big problem sometimes.
|
|
|
|
|
Having lived through (and indeed taken a small part in) the development of CP/M, MSDOS, windows etc. I have long since adopted the philosophy of using dev stacks that run behind the pack. The number of times when I hadn't even completed a coding task only to find that some dependency had changed, or a library no longer worked the way it did before (or even got completely broken by some update - Hello Borland!? Anyone there?) are too numerous to count.
For my recent web/mobile apps the only framework I have used has been Bootstrap, and that only because it is both so long in the tooth and so widespread it is at least fairly mature and has at least some chance of being maintained into the future (ie like PHP!). It is also completely available as source code, and I keep a buildable copy of the version I am using in my setup at all times.
Of course, even in that kind of setup, so much is outside your control: something I built less than a year ago is already being slowly strangled to death by Microsoft forcing Windows to use Chrome based browsers and yet within it's own apps (eg Office) still only providing IE based browser controls. Thus all the services this little add-on to Office talks to are gradually refusing to work, so I am having to find a way of calling an external browser to do authentication with third parties rather than doing it within the app...
The only thing that remains the same in this industry is the rate of change!
|
|
|
|
|
those are just kids doing home "howto" videos. nobody knows what's in those gazillion npm packages.
everything will be bad until you find yourself a good tutorial. a person who makes sense to you. that is why you'll have to skim over a few tutorials and chose what seems reasonable to you.
i have seen video tutorials where a person goes with a "and now by the magic of copy & paste" from something like console.log("hello world") into a full fledged server that nobody understands how it's working. you blame yourself for not understanding. it is only when you find a person who knows what he is talking about that you realize there are a lot of garbage tutorials out there.
and yes, i am overwhelmed by new technologies. it is not that i care about the 307th web framework that is going to fix the web, because the 306th framework that was proclaimed with fanfare to have fixed the web actually failed.
i am overwhelmed that they make changes to javascript and c++ every year or two and i think it's madness. they are making changes to c# and java and rust and it's madness. the cognitive load is getting bigger and bigger and you end up looking at working code from 15 years ago that is completely different than code from two years ago in the same language.
who cares about vue 4, angular 22, jquery 6 and react 13 when they meddle with the very nature of javascript?
|
|
|
|
|
I know what you mean.
It is all a bit overwhelming.
What I usually do is break it down into smaller pieces.
I would say tackle each part individually:
First, do HTMLThen do CSSThen do general javascriptFollowed by TypescriptThen Vue (or any other framework)Finally, try to add it all together
I found that trying to learn everything combined will get you lost.
Finally, let me wish you all the best learning this 'new' stuff.
|
|
|
|
|
Vue is a framework, so in spite of all of the yuck of npm package use, that's what a framework requires. I think you need to first make peace with your stack, then look at existing code that your team has generated with it. Take on some small task of updating or adding small functionality to existing code, or just take notes as you learn what the existing code does and how it flows.
This approach is the best way I know to learn a new tech stack. It can be fun if you let it be what it is - a kind of treasure hunt.
Good luck.
|
|
|
|
|
for my personal amusement i would do something else than vue/svelte/angular/whatever, but sometimes we cannot chose. orders are orders.
in that regard, this is a fairly good advice.
although, svelte is tempting. orders notwithstanding.
|
|
|
|
|
In my opinion, the vast majority are neither beneficial nor needed. I agree wit you wholeheartedly.
ed
|
|
|
|
|
I've found W3Schools[^] to be helpful in learning all the bigger technologies.
|
|
|
|
|
|
I'm a desktop developer that is being forced into learning web technologies. I too feel like it's all just too complex for sanity.
I played with the web over a decade ago, so I knew the bare bones. My work recently paid for a Pluralsight subscription. Even then, my issue is finding info for experienced coders that just need to know the gotcha's and syntax of the new language. I don't need a for loop explained to me. I need to know the difference between "==" and "===" in JavaScript.
I did a basic and intermediate JavaScript course by the same person and skimmed through it. Out of the 3 hours of video, I probably found 10 minutes of useful info. None of the sample code worked out of the box, so at least I learned something by fixing it. Then I found Kyle Simpson's Advanced JavaScript, which torn a big one into what I just learned because he actually explained the concepts behind the syntax. He has studied the standard, so he knows JavaScript well. He also has several utilities out there that are not uncommonly used.
The stupid thing is that my work expects me to already know JavaScript (remember, I'm a desktop developer). They want me to learn React and graphQL. I can't even get there until I know the web basics.
On the flip side, there is a junior developer at my job (hired right out of college) that doesn't know what cmd is or how to use it. They can, however, work on websites without issue. It's a different world.
Bond
Keep all things as simple as possible, but no simpler. -said someone, somewhere
|
|
|
|
|
This seems like an area where there could be a lot of improvement.
I was recently tracking a package by UPS, and it was expedited 2-day shipping.
They shipped out of California, and I'm two states north, in Washington.
They flew the package to Ottawa? If I recall, somewhere in Canada that wasn't BC, for some reason.
From there it wound up in one of the nearest "major" (200k+ people + airport) cities to me.
Then 2 days of nothing from UPS. That's about an hour away from me up the interstate.
I actually contacted them about that, because the only update I got was when they switched the date from "Monday" to "Tuesday" without updating anything else at all.
As a customer who paid extra to get it in 2-days and has a lot out waiting on this package, I was very unhappy with UPS. Enough to contact them.
The tracking actually made the situation worse in terms of how I felt, in this case, because of all of the above.
Some observations:
What made me frustrated was that there was not even any checking in for 2 days. I understand the weekend being what it is, but it went dark yesterday too.
What compounded that frustration was that they inexplicably flew the thing to Canada first, and then they let it sit for 2 days an hour from me without telling me why.
What they could do to improve these applications I think, is
A) Make sure to notify customers at least once a day, and try to give them news. Even if it's just a reason for a delay (inclement weather, or whatever)
B) Attach reasons to things that don't make sense on their face. Why did my package end up in Canada? Why was it sitting for two days?
B might be more difficult, but if the software on UPS employees end had fields for reasons (even dropdowns) any time they had to enter anything into the system, and they had to mark delays with reasons, it could facilitate B. I can think of some ways to do it that probably wouldn't slow down the existing workflow much if at all.
But like, this isn't the first time, or the only shipper that I've found could stand some improvement.
I mean, this actually made me lose some faith in UPS, and I'm sure that's not what they hoped for when they added package tracking features to their site.
Edit: Okay the two days was more like 1 and a half but still.
Real programmers use butterflies
|
|
|
|
|
You'd think they were good at that.
I received my new laptop.
In the morning FedEx said it was in the local warehouse and was "delayed".
5 minutes later, it was dropped at my condo lobby.
CI/CD = Continuous Impediment/Continuous Despair
|
|
|
|
|
At least in that case they were wrong in your favor. But yeah, could be improved.
Real programmers use butterflies
|
|
|
|
|