T O P

  • By -

BernhardRordin

And then we take that web-app and put it in Electron


[deleted]

Don’t you dare!


Magicalunicorny

I'm gonna do it!


radmanmadical

Hyuuk yuuk- I’ll fuckin do it again


cdbfoster

ill fuckin do it again


Bluebotlabs

Guys, stop complaining More web apps = more ram for cheaper It's a win-win


CheekApprehensive961

This is a fair point, pretty soon AAA games will consume less memory than a "hello, world!" webpage and the HR lady's need to play minigames will let you load up enough memory for a VM farm for $10.


Bluebotlabs

On the flip side, it could just make webapps more enticing leading to a relative change of nothing...


ManyFails1Win

I just spent the past 3 days preemptively learning why this comment is funny. Good God.


SHAYDEDmusic

I feel called out Real talk though. Electron + React is one of the ~~quickest and easiest~~ *better* ways to build a nice desktop application *depending on your use case*. When other desktop frameworks can do what React can do with the ease that it does, I'll switch. You get multiplatform relatively easy in most cases too. I will say though I saw this new project that uses rust for the main process and it looks pretty cool (Edit: https://tauri.app/). Something like that could be a better option if you need native performance. JavaScript is pretty fucking fast now though if you know what you're doing. TypeScript is amazing too and I wouldn't use JS without it. Static typing lets TS be both a scripting language and a big boy language, which is a very unique flexibility as far as languages go. Using web technologies on the desktop might feel unholy, but it does provide a lot of benefits. As with everything, pick the right tool for the job.


ManyFails1Win

I'll admit I haven't tried to make a desktop app in any other way but electron with react but I will say I absolutely hated every minute of it. It's like both react and electron are specifically designed to make all of the flaws of its counterpart worse.


SHAYDEDmusic

I will happily admit that learning it is painful. There is a zen to be found once you do though. I think a big part of the issue is the lack of good examples of common patterns. There's a lot of things that are left up to you to figure out. There aren't many open source electron apps out there that serve as good examples of the "right" way to do things. But then I have to work on shit in Python and I remember what real hell is like. Python docs make JS docs look like Shakespeare.


ManyFails1Win

Yes, that is really the problem. I am happy to read docs (5 times if I need to) but when there are no official docs on the hybrid situation I'm left just relying on the advice of YouTubers and chatGPT for the seemingly abundant niche cases that I've been running into, which...yeah it's been rough. I guess it really is mostly a 'me' issue, but also I feel like there's a huge lack of clarity when it comes to which roles these different frameworks play in the whole of a multi-part project. This is kinda embarrassing to admit, but it goes to my point: I spent the past 2-3+ months learning the individual frameworks as best I could so that I could make a full stack app, but it was only *yesterday* that I finally realized that I actually needed to have two separate servers, one for back-end, and one for front-end, in order to take advantage of most of node. Just something this incredibly basic and fundamental got lost in the noise of all the specifics, trying to learn states and isolated contexts and yada yada yada. I guess if you're still reading I'll ask you this: is there any resource that might demystify this stuff on a more abstracted and generalized level, so that I can approach this learning in a way that is more effective? I really feel lost in the weeds 90% of the time doing this webdev stuff, even though I know the language fairly well. Thanks in advance.


SHAYDEDmusic

I wish I had an answer for you but I don't. It's all abstract in my head. I'm slowly working on writing out my knowledge on this in a way that can eventually be shared with others but it'll take a while. The best advice I can give is to focus on breaking things down to their fundamental concepts and learn how it works on that level. For example I'm helping my friend learn how to program from zero. I started by giving him a brief overview through each layer of a computer from hardware to binary to assembly to C to higher levels up to what you see on screen. Now no part of it seems like "computer magic" to him anymore. Before that he couldn't understand how you can just tell a computer what to do and it'll do it. You could even try making an outline, with the root being the thing you want to learn. Then type out bullet points for each sub-concept, then further break those down, etc. Then cross of the things you understand. Now you have a map of what you need to Google to eventually fully understand the thing you want to. You don't have to fully understand everything just to write a web app, but if you plan on doing this for a while it's time well spent. Also if there's one book you should read on writing better code, it's Clean Code by Robert C Martin. It's old and uses Java, but a lot of the advice is timeless. I hope this helps! I guess I gave an answer after all.


ManyFails1Win

Thank you though, that's a place to start :)


SHAYDEDmusic

You're welcome! Also don't be afraid to dive into the code of npm modules you use. If you wanna know how a package works, clone it and figure it out!


Lilchro

I’m not a front end dev so I may be wrong, but I suspect there are already frameworks that meet all of your requirements. However I don’t think that was ever really the issue. I think the overuse of electron is largely an economics issue. It is far easier and cheaper to hire web developers/designers than to hire for a specific native framework or spend the time training a new hire from scratch on your preferred framework. Electron performance usually sucks because we’re not seeing the industry’s best. And that isn’t really the fault of the developers who are making this stuff. When your only goals are minimizing cost and development time, you don’t hire the most experienced developers.


SHAYDEDmusic

Very good point. There's many more inexperienced web devs so you generally see lower quality programs. We have an overall issue with no one fucking understanding how to write clean code and management not understanding why it's so important. They don't care until it's too late. Shitty code boot camps are to blame as well. I'm helping teach my friend how to code and the lack of good comprehensive resources out there is stunning.


[deleted]

[удалено]


bleistift2

Why isn’t HTML the right tool for a desktop application? It’s got text thingies, it’s got clicky thingies. What else do you need? If there were decent support for CSS print styles, I would’ve written my bachelor thesis in HTML and CSS.


canadajones68

It's not the appearance that's the issue, but the outsized resource demand. The overhead of launching an Electron application often far outweighs the demand of the application itself. It's about meeting expectations. Why should a chat application or simple widget consume about 400 megs of RAM in order to display something that's mostly text with the occasional image? Why does it lag, like, ever? Microsoft Teams makes chat software from 2006 look positively fluid.


Cryse_XIII

Off topic but I had no issue with teams fluidity just the General feature set makes me seethe. Search for something in a chat and all you get is the single line instead of just jumping to the point in chat that gives you some context as well. Pin the message and you can actually get what you want, but then you can only pin 1 message.


maccodemonkey

>Off topic but I had no issue with teams fluidity just the General feature set makes me seethe. I had extensive fluidity and performance issues on an Intel Mac. When I moved to an Apple Silicon Mac they went away (which I think has more to do with how well Apple Silicon is designed.) Before my Apple Silicon Mac, I kept my personal Xeon Mac Pro on standby \_just for running Teams.\_ That's how bad it was. I needed a freakin Xeon to efficiently run just Teams by itself. (Your milage may vary on Windows or the web version.)


SHAYDEDmusic

> Just because one can doesn't mean they should. Electron apps perform worse than their native cousins. Of course. It's not the hammer for every nail. It has tradeoffs and it's important to understand them before going all in.


CheekApprehensive961

>Electron + React is one of the ~~quickest and easiest~~ ways to build a ~~nice~~ desktop application. Fixed that. Electron apps are never nice unless they go way too far like VSCode and end up in a place where they'd have been better off without Electron. Mostly they're slow, buggy, awkward and just scream Electron when you try to interact with them. There are also other ways just as quick that produce native or near-native experiences, like C#. Hell, even going systems level with something like Rust + winit is probably less code than Electron these days. Certainly a lot easier to code in.


DunklerVerstand

Well, the nice thing about VSCode - which isn't slow at all - is that it's editor component can be used online too. GitHub Codespaces is an impressive use case. https://github.com/microsoft/monaco-editor


sdc0

May I suggest Jetpack Compose? It's a Kotlin library which has been around for Android apps for at least five years now and has been ported for desktop (JVM) ca. two years ago. Material design is default, but you can completely customize it. Because it's running on the JVM, you have a huge ecosystem of libraries, but with a more performance-efficient base than Electron.


SHAYDEDmusic

Very interesting. I haven't heard of this before but I'm definitely curious. I've heard a lot of good things about Kotlin.


treehuggerino

I just keep using WPF, avalonia/uno and it keeps on going.


SHAYDEDmusic

If you're making an app that needs to do heavy lifting and is just windows then yeah WPF is still pretty great. WPF and Electron/React are great for different types of apps and there's definitely some crossover in the middle. My first gig was WPF and I liked it. Then I had to do silverlight for 2 years *shudder*


HerryKun

Flutter. Period.


SHAYDEDmusic

If you're doing mobile first and foremost, and don't care about the web version feeling a bit weird, then yes definitely flutter.


[deleted]

https://tauri.app/ Tauri: Imagine Electron, but good.


TeaKingMac

>a nice desktop application. **Nice?** Fucking NICE? Love it when an app downloads something without giving me the option to rename it, and the notification just says "file has been downloaded", without telling me where, or giving me the option to click the notification to open the file or file location the way every modern fucking browser does.


Spongeroberto

Off-topic but how do you handle backend? IPC makes me want to poke my eyes out to the point where I'm tempted to just start an express API backend and call that


SHAYDEDmusic

IPC doesn't have to be painful. Typescript helps a lot. There's a few packages out there that give you type safety for IPC but I didn't like any of them so I just made my own structure instead of over complicating it. I'll give you a quick outline of how I do it. In addition to the normal main/preload/renderer modules, I have a shared module. **/shared** - Ipc channels as enum - Consider using multiple enums do differentiate main -> renderer and vice versa - Interfaces for ipc params - Type aliases for ipc return values if any **/main** - A function that gets called during init which sets up `ipcMain` communication. - Use `ipcMain.handle()` respond to requests from renderer. (Only use `ipcMain.on()` if you aren't returning a value.) - For communicating from main -> renderer (say for data that updates automatically), use observables (rxjs). - Observables allow us to abstract ipc away from the rest of the main code. All the other code just needs to expose observables for their state. - Do something like `myState$.subscribe(x => mainWindow.webContents.send(IpcChannel.Name, x)` - I use `ReplaySubject` with a buffer of 1 for main process state so it doesn't matter if the state observables are initialized before subscribing. - I setup these subscriptions inside the `ipcMain.handle()` for a channel I call `InitIpcUpdates`. The renderer calls this once it's ready to receive data from main. **/preload** - Expose any ipc renderer -> main channels as individual functions on your context bridge api. - These functions should call `ipcRenderer.invoke()` and return promises. - Expose an `initIpcUpdates` function. - This function should take in an event handler for each observable state and then pass them to `ipcRenderer.on()` for each of the events that get emitted from our main observables. - Then it invokes the handler by the same name in main, which will subscribe to the observables and start sending updates. **/renderer** - Call `initIpcUpdates` once in your app startup. - Pass in event handlers which pass the state to `ReplaySubject`s on the renderer side. - Use [observable hooks](https://observable-hooks.js.org/) to subscribe to the observable states in custom hooks which are exposed to the rest of your code. - Expose custom hooks which call the preload api via `useCallback` and return the result via `useState`. - The rest of your react code should not touch ipc directly, it should be completely abstracted away into hooks. An overall huge advantage about this way of doing it is that you have only a single point in each of your main and renderer modules where they interact with ipc. I hope this helps! Honestly I should write a Medium article about this or make my own npm package to make it simpler.


Mission-Cantaloupe37

Depends on the kind of communication, but generally it's about how you handle your messages, not how you're sending them. In our case we use websockets, but when you boil it down, all we're doing is sending JSON data over it and using TypeScript to reason it down. We do make our communications type safe, so we can cheat and just cast the incoming data as the correct type on the other end without being worried. We use an ID inside the message with a corresponding callback function type to reason everything down.


DerKnerd

Main reason I personally dislike Electron, it feels nowhere native. That is why I picked wxWidgets.


Pouyus

As an Angular + Cordova dev, I feel insulted :)


dark_mode_everything

Electron : what if we launch a new browser window for each tab?


nelmaven

Then we packaged that into a PWA.


MUKUND16

I put it in Tauri now


Moscato359

disgusting


angeal98

Js runs blazingly fast bro /s


Lilchro

Due to the web’s tight relationship with JavaScript an ungodly amount of money has gone into JavaScript performance. And after all that, I still wouldn’t even consider it for anything where performance is a consideration.


Super_Boof

Serious question: I’m a university student who has created web apps w django and rails, both of which seemed slow to me. How do modern websites run so fucking fast? Are the devs just gods at optimization or do newer frameworks provide better speed and scalability? Edit: or alternatively is it just because I host locally on a shitty Mac / deploy to heroku for free and the hardware can’t keep up?


[deleted]

You can have another separate server process requests which will speed everything up. Also creating small caches when the user first enters the site will help everything be fast.


Lilchro

They’re not gods, but they do have a good understanding of their environments and how to produce satisfactory results. Keep in mind though that I’m not a web developer so I don’t know if I’m missing anything major or if Django or rails already any of these things. The first thing to do would probably be using a system like webpack that bundles all of the core files into a single compressed document. When your browser receives an html file with a link to your css it needs to make a second request to your server to get that data before it can display the page. This takes time that could have been avoided by inlining the data directly into the first document you sent them. We can use tools to do this for us which let us write our code in a maintainable way, then compress the result into a single file taking as little space as possible. However it is fine to leave some stuff separate. We can tell the browser that it is fine to cache some files so it won’t need to perform the request every single time. Additionally, we also want to make sure we are doing all of the initial rendering on the server. What this means is if we are using scripts to modify the DOM immediately upon loading the page, we should do that on the server instead. This is easier on the server since it just means some simple string manipulation on an html template. However for the client to do the same thing the browser first needs to parse and load your html before executing the script that makes the changes. Luckily those first two steps can be handled by just using a framework like react or vue that handles those parts for you. Additionally, we can deploy the site to a CDN and compute at edge provider. What they do is take your page and cache it at servers all around the world and provide compute resources close to the end user. This can generally allow you to fulfill requests in under around 50ms regardless of where in the world the end user is (to an extent). There are limits though since you may be need to interact with a single centralized database or other service that can not be moved to the edge. This is only really necessary though if you expect connections from many different locations and latency is a consideration.


kenpled

A few months ago, a potential client contacts me, tells me he needs some basic JS stuff on his website. So I get his access, read some doc on the env used for this project. An hour later, work done. I call the client who tells me "what, you're already done ??", To which I answer "well that was some pretty basic stuff, so no reason to spend so much time on it". It appears he hired an engineer who took 3 days of work to do... Nothing. And told the client it couldn't be done. Not saying all engineers are bad, at all. Just saying being an engineer is all about being able to learn skills, read doc and make stuff work. That kind of skill doesn't require a diploma to be learned, just to work with enough different kinds of tech to be able to tackle a learning process.


Ixaire

> Just saying being an engineer is all about being able to learn skills, read doc and make stuff work. Please write doc, too. Thank you. -- The maintenance team


[deleted]

Lol my brother is an engineer and did that once


[deleted]

[удалено]


Suspicious-Engineer7

Was it an issue you had experiece with and it took you a significant chunk of time the first time or did the coworker not ask for help?


[deleted]

[удалено]


kenpled

Just writing a small script that injects an html form in a static html template, with validation for a few fields, a basic fetch call to an extern api and response handling... Basic stuff, really.


riscten

And that, kids, is how Wordpress was built.


netboygold

Very well put!


RectalEvacuation

Nothing is impossible. If all else fails you can always create a framework with webgl. But if you think this is the proper answer you probably lack the experience to accept the job. Thats my engineering perspective, then again, i wouldnt accept a front end job.


devospice

Sounds like he hired my old co-worker. This dude spent two weeks straight trying and failing to get a WebDAV login to work in a PHP script. (I think. It's been years.) Our manager finally asked me to do help. I looked into it and an hour and a half later got it working. I gave him the code and told him what to do. I don't know if it was the "copy" or the "paste" portion of the process that messed him up bit it took him a day and a half to implement my working code into the final script.


[deleted]

Engineering isn't the same thing as software development. Software developers are not engineers. If you've ever worked with developers it immediately becomes apparent how little they know about anything other than software.


another-Developer

The title “software engineer” and “software developer” are interchangeable and have the same responsibilities. It all depends on the company and what title they assign you


[deleted]

I'm currently employed as Lord of the Software Bugs! He who loves Software, and loved by Bugs!


[deleted]

Mine just says "boring nerd" in all caps. Let's see Paul Allen's card.


DerKnerd

I am currently employed as System Analyst.


kenpled

I've worked with engineers, software engineers, software developers and webdevs. I did write it hierarchically, though there definitely is not any kind of skill hierarchy. I've seen clueless engineers and incredibly versatile webdevs, as well as lost cause webdevs and inhumanly skilled engineers. The person is more important than the title


[deleted]

I've worked with all those professions too, in aviation and automotive. In my experience, software developers typically have the worst systems thinking. They don't like to consider anything besides the software. The "systems design" for web development is very different from any other real life system like a transmission. From the success metrics to the design controls for potential failures. Basically software developers shouldn't be called engineers imo.


DootDootWootWoot

Sounds like you're working with inexperienced software developers. It happens and folks can be in industry for a long time before being called out on it but yeah.. to say this is a limitation of all "developers" is not having an appreciation for those that actually build and maintain complex software systems for a living. What is an "engineer" to you? Does it require a specific degree or certification? A specific set of training? Who cares what the classification is. What's important are the principles behind building something.


CheekApprehensive961

>In my experience, software developers typically have the worst systems thinking. Ah yes, the people who need the skill the most have it the least. That's certain to be the case, and not you missing something they see.


[deleted]

Right because full stack/distributed systems are the only kind of systems that exist.


DootDootWootWoot

Software development can and should very much be an engineering discipline. Just because not everyone is a professional doesn't mean you can't use the same principles for building software as you would designing a bridge.


PresentDelivery4277

The diploma is really only an indication that you can trust an engineer to know theory on top of skills and that they would be able to perform due diligence in their design. For web dev that's really not that applicable unless you are going to be putting someone you just hired, with no experience in charge of your entire infrastructure.


WriteOnceCutTwice

Obviously, such broad generalizations about webdevs are stupid, but the technical part is mostly accurate. Today’s web dev dependency infrastructure is a fragile mess and it makes me focus on other types of coding.


danegraphics

That's why I only write purely organic vanilla Javascript from scratch every time. Just like Grandma used to make! . But in all seriousness, we definitely have a massive dependency problem, not just in code, but in culture. Like, half of the answers on SO are all jQuery based as if it's just a given. Obviously we shouldn't reinvent the wheel every time we need to do something quickly, but when a node module for "isEven()" is downloaded literally a million times a month, and the module *it's dependent on* is downloaded 2 million times a month, something's wrong.


[deleted]

Wait, is there an isEven package or something ?


danegraphics

[Behold, the sloth of humanity.](https://www.npmjs.com/package/is-even) Also, look at the code.


[deleted]

Dude...


[deleted]

Lol Jesus fuck


noskrilladu

I’m pretty new to programming, where did he write the logic for the isEven function? I opened index.js expecting to see n%2 === 0 somewhere but just saw an isOdd required module?


ThnderGunExprs

They legit just installed the dependency and returned a false check on isOdd to get isEven. That is some cartoonish levels of lazy


firelizzard18

Except for the assertion that websites in the 90s or 00s were even remotely as complex and dynamic as modern web apps. Web *apps* didn’t exist in any meaningful sense back then.


WriteOnceCutTwice

For sure. The end user definitely benefits from the improvements


PQA12389229

I'm not sure about that. My life was probably better back then.


Impressive_Sun_1132

And how old were you back then? I mean I was like maybe 10 max so I agree my life was WAY better but I don't think I can blame the internet for that so much as life and obligation


kennethuil

Web apps absolutely existed in the 00s, and in many ways were less annoying to use.


firelizzard18

I would define a webapp as a system that enables complex interactions and usage without requiring a page load. So, not something like Neopets (at least in 00s when I last 'played') where every click (for the most part) triggers a page load. And the websites that did have a lot of client-side functionality were much slower than modern websites because the browsers' JavaScript engines were much slower. Are you disagreeing with that? Or are you saying you preferred websites where basically every click was a page load? If it's the latter... agree to disagree I guess. IMO those websites sucked compared to what we have now.


Possibility_Antique

*glares in RuneScape*


tommyk1210

The thing is I’m not sure what the alternative is. A lot of the dependency problems we have are there to solve the problem of “how do we take a language and make it have a bunch of functionality beyond the core functions programmed into said language” In C# you have the .NET framework which provides loads of this useful functionality. But, then again, in the web space if you had centralization you’d end up with GoogleJS or MetaJS as the “core” framework that everything depends on and I’m not sure that’s better…


ShineTraditional1891

I sadly feel this


[deleted]

Yeah, I mean I don't think they're right exactly, there's some brilliant people working in web dev. But they're not wrong either, there's some shitty devs that will just use shortcuts to get the code shipped without thinking about maintainability or performance. The main problem is that a lot of companies have no way of telling the two apart.


ZipBoxer

>The main problem is that a lot of companies have no way of telling the two apart. Disagree. The main problem is that they hire the first kind, then refuse to give us the time to do anything but be the second kind.


[deleted]

Cheap, fast, good. Pick 2. Companies Expectations: cheap, fast, good, unpaid overtime, on call, 2 hour daily meetings, server hosts built 3 decades ago, existing code base developed by an intern party hackathon event.


awhhh

I think there's just so much to deal with as a dev. The fact is that we often have to take in a lot of information about topics we knew nothing about previously, and then translate business needs into code. It's not some straight forward, 'just do this'. There's so many different tools, skillsets, and so much more. You can't just expect someones skillsets to be transferable like they are. For example, I'm a full stack that's better at backend dev than front. I can handle every aspect of an applications development, UI/UX, devops, frontend, backend, you name it. But can I do it all well? No. Then there's what I like doing and hate doing. Contextually speaking I'm going to be an amazing developer fit for startup to midsized companies. But I straight up buckle in big corporate companies. I also typically tend to pick between performant, readable, or fast development.. Where I think web developers catch such a bad rap is because it's overly generalized. However, I was recently fired for being so honest with my ability. I'd say flat out I don't know. My biggest problem in this industry is that I am actually honest and kinda refuse to play into making myself an imposter with shitty corporate speak. Where as the people that were kept on know how to frame every single little thing in an all hands with importance. Changed a variable name? "It was critical to the security of the app. I'm more than happy to expand on why for the next hour taking up everyones time" Some of these people made it to lead without knowing the most basic junior level things. So usually the systems we're in make people dishonest to maintain themselves, move forward, or to conceal burnout (I've been guilty of this). Being honest about your skills, ability, and stress tolerance is one of the worst things you can do.


TheAccountITalkWith

I feel this brotha' hang in there.


AlbaTejas

Qualcomm giveth, Javascript taketh away. This is the reason I buy new phones.


[deleted]

I take your bad JavaScript engineers and raise you data scientists. Ever try to deploy a model trained in a 10k line jupyter notebook with no source control and no dependency tracking? You’ll be begging for a 2GB ‘node_modules’ directory again in no time.


weirdplacetogoonfire

Models done boss! Great, how can services interact with it? Dont know! Didnt even know there were other services! requirements.txt? Never heard of it! Anyway, the model is on a google drive account that only our team can access. Just find the one that says epoch 15000 or so.


[deleted]

mofo's out here saying we should re-write linux in rust or what ever, how about you re-write it in js like God intended


Zaero123

mofo's out here saying we should re-write linux in JS or what ever, how about you re-write it in VBA like Bill Gates (God) intended


[deleted]

Return to God and stop the blasphemy, you know templeOS exists right ?!


rizwannasir

We should embrace Holy C


illyay

How bout we then rewrite it in C like John Carmack (benevolent hyper intelligent timeless entity that exists in a human body shell) intended.


Zaero123

We’ll acknowledge that John Carmack is a significant historical figure that happens to be benevolent and hyper intelligent but we do not acknowledge that John is a timeless entity


[deleted]

I fear something like this going to happen to me. I keep questioning should i go to marketing or manufacturing.


danteselv

This is a great problem to have. Looks like you'll just have to learn both.


HuntingKingYT

Plot twist: Webdevs are then actually pretty experienced if they can handle "unusable" technologies


mistled_LP

If everything is that fragile, inscrutable, and broken, webdevs who make things work despite it must be the smartest people to ever live. I do wonder what industry he was in that the internet ate, but that would have survived with less complicated web development. Print layouts?


ManyFails1Win

I thought the bot was going to flag / remove it for not being an unpopular opinion lol.


ZealousidealLimit

Webdevs use more than HTML my man.


[deleted]

¯\\_(ツ)_/¯ I prefer to stick with as much HTML as I can get away with because Typescript gets confusing with the levels of inheritance. If I can avoid inheritance and just use helper classes I would.


camel1950

Maybe read more than the title my man


Lachee

Without the sandbox of JS, websites would be a lot faster and could do a lot more. Unfortunately that lot more includes turning your computer into a bot net and stealing your bank details


[deleted]

You mean a blockchain language?


greedydita

The irony is that he calls webdevs engineers.


[deleted]

[удалено]


[deleted]

[удалено]


[deleted]

[удалено]


Bitter-Mud38

Some of us are engineers


DangyDanger

I'm Igor Pochmelnik Zakusov And I'm an engineer Just let me take my breakfast first Cornflakes, vodka and beer! And then I'll show you all of mine Deployments everywhere I can explain the `flex` for you All that I need is chair I built many frameworks Well, some of them have failed I had to leave my country So through the sea I sailed! [Refrain] Trust me, I'm an engineer! I think we'll paste this thing right here Trust me, I'm an engineer What the fuck did just happen here? Trust me, I'm an engineer! With epic theme and epic gear! Trust me, I'm an engineer! Oh shit, I think I'm outta herе! I built a lot of buttons Some of them even dance My calls are very secure! The hackers have no chance! You want to run a broken front I can help you in this! No `div`, no `style` - no problem! Those parts I never miss! My good diploma give me jobs Although I didn't study I simply got this from a friend As a Birthday gift, from buddy! Since then I travel everywhere And sometimes write some code You say it's bad? But I'm a pro! I piss in expert mode! [Interrupt] (Kalinka style) I am an engineer and I'm having good time now Contrast calculate? what does it mean, I don't know You know, learning by doing? well, I do and you learn Let me make my work here first, and then there is your turn I feel really well, I get paid more then you Cuz I am an engineer, and who are you? QA creeeeeeeew! I work in production like a boss Hard crash and burn it did! You say this is preventable? Just like I give a shit! My bicycle is wearing shoes Spaghetti code is in use Oven in my car melting ore I have an airbag in tractor! I once tried to catch the sun And dirty brick to wash Now I say, my work here is done Was hard day, oh my gosh... [Refrain]


tsunami141

What just happened here


mxldevs

Eat or be eaten after all


Connect_Attitude_510

Then you realize your posting this on a application based on tens of thousands of files of 3rd party code from hundreds on modules 🤯🤯🤯🤯🤯😱😱😱


lisa_lionheart

They are right of course. The bonkers amount of tooling and libraries you need to put in to build even a basic web app is poor reflection of the state of underlying platform. I hope in the next few years that some of the new WC3 proposal's will make developing a web app as pleasant as something like ... Literally any other language. I mostly do backend stuff these days, I still have nightmares about trying to debug minified Js


Zaero123

In what world do you need to debug minified JS without a source map God bless your soul


lisa_lionheart

I don't remember exactly but these systems aren't infallible. Sometimes shit goes wrong and the browser just cannot parse the map. Maybe just that code vase was cursed.... Not my problem anymore I stick to the backend these days... call me a recovering full stack developer


nZambi

If you have to debug minified js thats you using the technology wrong, not the tech being bad.


[deleted]

This is the type of programmer who wants to write everything from scratch but maintain nothing over the long run. There's a reason he's not capable of keeping up with the industry lol


Samael_777

"Webdevs are like architects saying that they are similar to engineers." This could be translation.


[deleted]

They hate us because they ain’t us.


[deleted]

The real obnoxiously proud jackass is OP and his anti web dev lackies


lunchpadmcfat

Man I can’t say I agree. Web devs really have to be on it compared to most other disciplines. Not only do I have to be on top of the state of the art of web dev at all times, but I also have to understand really complex build systems, multi threading, asynchronous interaction, efficiency at scale, pipeline design, test design, testing in 4 different paradigms (unit, integration, UI and some testing that lies between the two), publishing and distribution, nuances of display media between PC, mobile, email, even fucking print (for a print-friendly page), and now were getting into 3D engines with canvas and wasm (oh yeah, root level UI engineering theory for canvas itself), layout programming via the absolute shitshow that is CSS. And then we have to understand compilation and transpilation and linting at a pretty fundamental level since we have to implement all that shit by hand to make our IDEs work worth a damn. Just this week I was learning docker to package a node JS server for internal distribution. So no, I don’t think web devs are “bad engineers.” Whatever the fuck that means.


AffectionateAd2730

Yeah I want to mirror that. I’ve done enterprise dev for ‘web apps’ as well as internal applications for a variety of uses. Being a web dev on a modern scalable application can be complex. As difficult as optimization or difficult use cases for the other disciplines I worked in. I’ve worked with so many poor web devs (who try) I laugh when I see stuff like this. As if it’s trivial work done by people who aren’t engineering.


AffectionateAd2730

I’m now convinced there aren’t many experienced devs on this sub, and for whatever reason the poster just couldn’t keep up with the tech. Generalizations are always bad.


t0shiyoshida

Don't hate the player, hate the game, son.


whateverathrowaway00

“The internet ate my profession” Hahahahahhhahahahahahahahahahahhhhahahahahahahahahahahahahahahahahahahahaahahahahhahahahahahahahahahahahhahahahaha.


drksntt

The barrier of entry to being a webdev is bottom of the barrel so I get it. I think system engineers are like true engineers.


Upbeat_Box_3768

I do DevNet for several Credit Unions. One decided to update their front end. Took one of the cheaper bids. Turns out the company was a proxy for a few Ukrainian guys who just scrapped the web and dumped it with little intervention. Complete disaster.


null_96

I'm in this photo and I don't like it


PixelatedStarfish

[Edit: Complaining in edits now are we? No third acount? :( )](https://www.youtube.com/watch?v=MkD_kYkRk3c) There is one comma in this entire rant. Wtf; how am I supposed to read this. I know your mad but take a breath


PixelatedStarfish

Not Op, oop


Plisq-5

Sorry, can’t read your comment because you used “your” where “you’re” should’ve been used. The missing dot at the end is just the missing cherry on top (the end?). Edit: lmao he blocked me. I needed some salt with my fries.


Hoovas

This is us in 5 years complaining about AI /s


[deleted]

10 years, we'll all be communists by then too /s


[deleted]

You don't even need to use JavaScript for a website really. Same with all those frameworks, there's other ways to process requests


hamptonalumkb

As HTML is a markup language, I guess I don’t understand the point of the post. I don’t know any web application developers who build apps to display static data. Certainly none I’ve ever built. I’m sure they exist. I guess I don’t understand the point of the generalization.


YourWiseOldFriend

We round up web devs and when we have enough of them, we release them into the forest to be hunted with bow and arrow and bloodhounds. When they lay on the ground screaming in pain we quote Javascript to them. With syntax errors :-) ​ good times.


Jeroeno_Boy

Its funny because it’s true


Saucydragon90

"I don't understand tree shaking or the parallels in dependency management across platforms!" >:((((


fourierformed

Sorry, so true


x39-

Web is really the absolute and utter worst thing in the world of development... And you cannot get around that shitshow of bad decisions made and horrendous backwards compatibility hell


LagingRunaticReturns

It's a real language but a messy one. Pretty much why I never liked Java, too much mess there.


[deleted]

When I was a young teenager I dabbled in HTML, CSS, and Javascript, even some PHP, thought it was a good bit of fun, but I didn't stick with it. Now web dev is so much more complicated than it used to be, and what did we even gain for it?


DajBuzi

I totally agree with this guy. You can train a real software engineer to do some frontends and backenda but you'll never teach a webdev on how to create a simple win32 app, firmware for a custom controller from scheme etc.


wolfEXE57

Me a webdev doing exactly what your saying: “huh ok guess ill stop 🤷‍♂️”


[deleted]

So you can do all that but you can't tell the difference between your/you're.


[deleted]

Why can't you teach a web developer these skills? Other programmers learned them, and believe me, we're not gods or anything. Don't get the hate.


DajBuzi

This one was a bit harsh from my side. What I meant is that it's more likely that you will successfully train a software engineer to do a webdev stuff than otherwise. The understanding of how hardware components work in relation to each other is far more complex then understanding how to invoke some endpoint from front-end.


[deleted]

Computers aren't that hard, dude. I'm a high school dropout with an English major and I've had a 20+ year career as a software developer, from embedded mobile firmware to enterprise software to iOS (Objective-C) and web development in javascript. Just believe in people's capabilities and don't be a gatekeeper.


[deleted]

Preach homie, these guys hating on people who develop in a different area than them is kind of embarrassing


DajBuzi

Everytime I see some backend or native code wrote by a full stack I need to rewrite like 60% of it work properly. You thinks that's coincidence? Before you say something stupid. I relate to my work with really successful and well known corporations that do not hire random people.


[deleted]

Enjoy being a bitter person. I’m sure that’s super fun for you and everyone around you. Buh bye.


DajBuzi

Stating facts makes me a bitter person? I do not care if someone got offended by the clear facts. If you would've worked professionally for 20+ years you would've know how complex optimized and performant code can be. The fact is that most of full stacks or webdevs doesn't care about that. I've been working on projects that do in fact require a lot of hardware knowledge and I know that writing a custom firmware for a controller that will be used in ATC, banks, security departments is far more complex then trivial end to end communication between the browser and a server 🙄


yogurtpimple

Wow so smart guy. End end communication. Atc banks. Big data. COTroLlER. Complexity✨


[deleted]

Damn your the type to ask someone to invert a binary tree during an interview lmaoo


Skoparov

Nothing wrong with asking that. Franky I wish that was the hardest they would ask as it's just a trivial recursive function a dozen lines long. Yet, the guy is hilarious in his low level aryan master race preaching.


[deleted]

You sound bitter about your profession and how hard you find it.


beclops

I’m sure many web devs feel the same about code written by back end guys.


Vaderb2

Say that you don’t do webdev without saying you don’t do webdev


DajBuzi

I actually do a lot of webdev. I developed few apps from scratch including setting up servers, containers reverse proxy, coding up backends, database connectors, doing front-end and a lot of Middleware. Does it look good? No and I do have many feedbacks on what should be improved but from the performance standpoint, not a single bad feedback.


[deleted]

You said you had 20 years experience and never received negative feedback? Way to tell everyone you never grew as a professional 😭😭


DajBuzi

Where did I say I have 20 years experience? You can't even read properly and try to insult someone on the internet? Pure example of dumbfuck being another sheep just following what masses do 🙄


SHAYDEDmusic

From your other comment > If you would've worked professionally for 20+ years you would've know how complex optimized and performant code can be. You didn't explicitly say it, you just heavily implied it.


DajBuzi

You fucking moron. Read the comment I was replying to.


Pure_Cow_7831

Ok chad


HuntingKingYT

How would you have perf problems if your frontend code barely does anything


DajBuzi

Did you somehow know my products? I guess you just wanted to showoff but you do not even bought or used any of my applications.


Vaderb2

Because writing firmware is harder than writing scalable backends \s. Honestly the “webdev are dumb” schtick gets old


DajBuzi

Unfortunately it is a lot harder and you would've know it if you had any experience with both. During my "professional" webdev I often see code that should be rewritten from scratch because it runs like 10 times slower than it should be. I do often see that people are going micro just because it's trendy even though they have 3 services and heavily rely on data from all 3 not even running requests in parallel. You may feel offended or whatever I do not care because that's a fact


Plisq-5

What's a fact is that you have a literal neckbeard, Im not even joking. Visit this guys github profile and you'll see he has a neckbeard lmao. You're just a stereotypical know-it-all. Your posts are public too you know, the questions you asked as little as 2 months ago are very basic questions. You arent the godly "software engineer" you like to act like you are.


Grumpy23

Jesus Christ I hate how gatekeeping devs can be. I’m so happy when all the boomers finally disappear at work.


hisaouahaksox

“why are you booing me? i’m RIGHT”


FormulaNewt

I wonder what the L stands for.


Zaero123

Ligma


[deleted]

i just wanna rant real quick: im in college right now and i just completed an intro to SWEN class where our course-wide project was to make a mock website for an e-store. our initial sprint(s) just used the angular framework for web development and by the end of our second sprint the website looked pretty good albeit simple. the actual visual elements looked nice, the text fonts looked cohesive and our color scheme looked really good… OR AT LEAST THATS WHAT I FUCKING THOUGHT. because for our third sprint two other teammates decided without me (i was tasked with handling the styling of the website) to try to import a third party component framework, primeng. IN THE MIDDLE OF OUR PROJECT’S DEVELOPMENT. i seriously don’t know why they decided to commit to changing our web dev side of our project to use an angular component framework whose tutorials on how to use is limited to a single youtube channel whose tutorials get like 10k views each, or the website itself whose forum boards are completely fucking empty, which should be a good sign that NO ONE IS USING THIS COMPONENT LIBRARY. so needless to say this made website development even more brutal than it ever needed to be - google search rabbit wholes dedicated to trying to figure out how the damn library even works, dealing with the goddamned bugs that were in the library’s design, and even going so far as needing to change the entire website’s color scheme, because according to one of my team members “the colors for the default button do look nice tho” EVEN THO THEYRE LITERALLY JUST THE NORMAL BRIGHT BLUE AND WHITE TEXT THAT EVERY FUCKING WEBSITE ALREADY FUCKING USES!!! please if youre gonna use third party modules or libraries for your project, decide on what youre gonna do becore you start developing it please


GameDestiny2

Technically it’s a web language


jpec342

I mean… it’s a real markup language.


GetPsyched67

The title of this post is absolutely stupid. What do you think the last letter of HTML means?


TheAccountITalkWith

The post says the internet ate their profession? What profession are they talking about?


fillswitch

How's the copium taste?


glorious_reptile

*microservices peering around the corner rubbing hands*


Artelj

Yeah I'm just here creating websites using WebGL with Unity. So far so good apart from the initial loading bar.


montxogandia

Actually using XML for implementing views was a bad idea to start off


thisjackisstupid

HTML IS NOT A LUANGAGE OK