Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Mahatma Goonsay
Jun 6, 2007
Yum
hey its me the most terrible of all programmers, writing javascript is the highlight of my day

Adbot
ADBOT LOVES YOU

Mahatma Goonsay
Jun 6, 2007
Yum
basically any language used to write medical software has to be garbage. I think there is some kind of rule

Mahatma Goonsay
Jun 6, 2007
Yum
is this the place to e/n about working at one of the oldest and most terrible software companies in the world?

Mahatma Goonsay
Jun 6, 2007
Yum

jit bull transpile posted:

Of course, that's how I got famous :)

sorry to leave you hanging. lets just say it’s very similar to epic but somehow worse

Mahatma Goonsay
Jun 6, 2007
Yum

jit bull transpile posted:

Do you work on intersystems EU only emr nightmare?

its meditech, where you can write proprietary software in proprietary programming languages at 50 cents on the dollar!

Mahatma Goonsay
Jun 6, 2007
Yum

jit bull transpile posted:

Noice. I used to support meditech in my help desk jockey days and it seemed like trash. Also I love how y'all use a language forked from mumps that has somehow become even more terse and indecipherable than the source language.

Please teach us MAGIC

i will teach you the ways of ~MAGIC~ if you can teach me how to escape this place. MAGIC $T is the one that is kind of like mumps, everything is a B tree. there is also magic fs which is terrible in completely different ways.

Here is something in $t that will print the fibonacci numbers under 10000. Note the left to right assignment using a ^, which looks like a little arrow in a magic terminal. # is a "prefix", which just outputs things to the terminal.

0^X,1^Y,D(13,10)^#,DO{X<10000 X^Z_D(13,10)^#,X+Y^X,Z^Y}

edit: the D(13,10) are just cr-lfs i put in there so that it would print out real pretty.

Mahatma Goonsay fucked around with this message at 20:04 on Aug 6, 2018

Mahatma Goonsay
Jun 6, 2007
Yum

mystes posted:

"X^Z_D(13,10)^#" is like
code:
print(str(x) + "\r\n")
z=x
or something?

yeah _ is the concat operator and the ^ assignment operator can both be chained so if you did 1_2^A^B^C, all A,B and C would be 12. Also the language is what I would call militantly untyped. there is no real distinction at all between strings and numbers and you get hilarious behavior if you multiply 3 * "hello" or something like that.



the comments on this one are pretty great.

Fiedler posted:

do you know any non-moon languages? if yes, apply to literally every job listing that mentions that language. else, learn a non-moon language.

I know javascript and react pretty well. im pretty much a full stack dev, but all my back end knowledge is completely worthless. I get a lot of recruiter spam for web dev jobs, but I really am not great on the css/design side of things.

Mahatma Goonsay
Jun 6, 2007
Yum
turns out the big important project ive been working on for the last 2 years is about 30% slower then the thing it is supposed to replace. oops

Mahatma Goonsay
Jun 6, 2007
Yum

MALE SHOEGAZE posted:

how much has your thing been optimized and how much was the other thing optimized?

did you use an orm?

oh yeah the old one is definitely more optimized. someone in another group ran some tests on it and now my director is all worried. what is funny is that i brought the same thing up a couple months ago and it just got hand waved away. oh well

Mahatma Goonsay
Jun 6, 2007
Yum

MrMoo posted:

Did it take 2 years to realise the performance difference? :lol:

well we have been building it while supporting the existing system. really with the new one we are at the point of making it work vs making it fast. of course now someone has seen the word “slower” so it should be an entertaining couple weeks

Mahatma Goonsay
Jun 6, 2007
Yum
so are futures kind of like promises in js?

Mahatma Goonsay
Jun 6, 2007
Yum

DONT THREAD ON ME posted:

I also don't have kids

every time a read one of your posts about rust or asm or whatever i feel slight regret that i had kids before really getting into programming. of course deep down i know before kids i would just have played video games or watched tv instead of learning haskell or whatever.

Mahatma Goonsay
Jun 6, 2007
Yum
so does anyone know a good crash course on object oriented design patterns? i need it for a uh friend.

Mahatma Goonsay
Jun 6, 2007
Yum

Finster Dexter posted:

This seems dece and I found it by googling design patterns: https://www.geeksforgeeks.org/software-design-patterns/

But honestly, cramming design patterns has never worked for me. I only ever learned them by using them, which is a little hilarious because a lot of times I don't know I need them unless I learn them. The Terrible Programmer Conundrum.

thanks! i have a whole week to figure this stuff out! maybe ill build a little app or something.

Mahatma Goonsay
Jun 6, 2007
Yum
Not when everything is written in mumps or worse.

Mahatma Goonsay
Jun 6, 2007
Yum

Sapozhnik posted:

I could probably write a more detailed rant about my experiences with Redux, but in summary it

- Is very under-specified: Everybody has to invent their own conventions for stuff so nothing built above it interops
- Makes your business logic homeless and punts on re-homing it to your choice from a bunch of lovely "middleware"
- Makes type-checking needlessly painful
- Is a solution in search of a problem

If you have a weird matrix of dependencies between disparate GUI components and your application's internal state then the problem isn't the fact that you're not using Redux, the problem is that your application architecture has a poor division of responsibilities (or your functional requirements are insane).

Most people who habitually use React tend to create pairs of components like a Widget and a WidgetView. The Widget component will, say, take a repository object that talks to a particular collection within a REST API as a prop, and a widgetId as a prop. It will async fetch a widget into this.state and render a loading placeholder while this is happening, then when the async fetch is complete it will render the WidgetView. WidgetView will take the current state of the widget object as a prop, an onChange function it can call to update its parent's state, an onSave function it can call to save the changes back to the server (which it might call in a button onClick or it might call from a periodic timer), and a status prop whose type is some shared utility along the lines of "interface Status { busy: boolean; error?: Error }" that its parent can use to disable it while the async save is in progress and report errors from the API.

The Widget delegates all of its rendering, and the WidgetView has no this.state and doesn't talk to the API.



Also, unrelated to this discussion: HOCs are horrible. Use render props instead, they mostly solve the same problems, but the latter is a lot less implicit and a lot nicer to type-check. The tide of opinion in the wider React community appears to be turning in this direction as well.

render props are now lame and hooks are the new flavor of the month (even though they are like at an alpha state right now)

Mahatma Goonsay
Jun 6, 2007
Yum
I dunno if it is something special with gitlab but i just hit the little squash checkbox on my pull request and dont worry about it

Mahatma Goonsay
Jun 6, 2007
Yum
the only moral dsl is my dsl

Mahatma Goonsay
Jun 6, 2007
Yum

Corla Plankun posted:

do any languages specifically NOT support the ruby-style "just gently caress my namespace up" imports?

most people don't use the python version (from thing import*) but every once in awhile i see it in production and have to spend time fixing it and sneaking it into a pr. It would probably be pretty cool to collaborate in a language that doesn't have a `gently caress you if you havent memorized whats in this module` operator

node js

Mahatma Goonsay
Jun 6, 2007
Yum

Ciaphas posted:

I've not encountered this professionally, somehow, so I'll just ask


when you've got a bug like this that you think you've put in enough defensive code to prevent relapse, BUT for whatever reason you can't reproduce the original bug in the first place, how is my time best spent going forward

- find the drat bug come hell or high water, doesn't matter how unlikely it is to produce in the Real World
- code defensively, put in traces, keep an eye out, and hope like hell it doesn't happen again while I get some other work done


I guess this is more a 'depends on your manager' question, huh

as someone who used to have to write software to interface to incredibly unreliable lab equipment option b is sometimes the only solution

Mahatma Goonsay
Jun 6, 2007
Yum

MrMoo posted:

web components

isn’t chrome supposed to be better at rendering web components? what does Firefox do?

Mahatma Goonsay
Jun 6, 2007
Yum
|AAPL - 206|YOS - 420|POS - 69|DIS - 135|

Mahatma Goonsay
Jun 6, 2007
Yum
Me: hey vendor how do i get a token to access your api?

Vendor: here you go, you can use this token 'xxxxxx-xxxxxx-xxxxx-xxxxxxx'

Me: did you just email me a token? how are other users supposed to get tokens? when does this expire?

Vendor: thats that best part, the token never expires! and you can just share it with your buddies if they need to access the api. isn't that great?

Mahatma Goonsay
Jun 6, 2007
Yum

mystes posted:

What about terrible people who think their programming opinions are good?

that is what the pl thread is for

Mahatma Goonsay
Jun 6, 2007
Yum
as a terrible front end dev. what are the best ways to handle db migrations? I’m thinking mostly for MySQL and Postgres, or is there some magic generic tool?

Mahatma Goonsay
Jun 6, 2007
Yum

Twerk from Home posted:

If you've got devs that are comfortable with SQL: Something like https://flywaydb.org/ is a great solution.

If you've got devs that don't like writing SQL: You're hosed, but just use however your ORM manages migrations. My organization has stumbled our way through with Sequelize, a terrible, garbage Javascript ORM and even its rudimentary migration management has been OK.

Thanks! Javascript ORM definitely seems cursed haha.

Adbot
ADBOT LOVES YOU

Mahatma Goonsay
Jun 6, 2007
Yum
also don’t forget that typeof null === 'object';

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply