|
here's some terrible programmer wisdom: never write an internal library with the intent of open sourcing it. you'll over engineer it and it wont be useful or good and it wont get opened sourced and everyone will hate you.
|
# ¿ Jul 17, 2018 16:40 |
|
|
# ¿ Sep 18, 2024 18:22 |
|
prisoner of waffles posted:I have awful half-assed advice for shoegaze about looking for work with rust / systems programming so i've been working really really hard on my terrible functional programming library in rust and i'd be lying if there isn't a small part of me that idly fantasizes about being contacted by mozilla to come work for them because it's so cool. but that will never happen. but yeah honestly i'm going to try contributing to mozilla/rust projects with the explicit purpose of getting a job working in rust, but it wont be my primary focus because that's a lovely plan. speaking of my functional programming library: i think i'm basically stuck. my enum based representation is seriously ugly and while it's good enough for a blog post on the subject of HKTs in rust, it's not sufficient for actual usage. so, i've spent the last two weeks trying to build a lazy evaluator that builds up a series of computations over kinds and then executes them. I got this working, fully on the stack without boxing or anything, but the resulting interface is just not what I want. So, I'm going to give up on this until GATs are available. However, I have enough content for an interesting blog post so that's what I'm gonna do, and I'll resurrect this effort when GATs are out. DONT THREAD ON ME fucked around with this message at 16:50 on Jul 17, 2018 |
# ¿ Jul 17, 2018 16:45 |
|
gonadic io posted:hi im gonadic io and im a terrible programmer. my current hobby project is rust code running on an arduino which is talking to a magnetometer that's awesome.
|
# ¿ Jul 17, 2018 16:50 |
|
ctps: about to get murdered in this meeting. basically, i set up our sso configuration a while back. i did the needful. however, our entire authentication/user model just doesn't work with sso and i've been very clear that the system is super messy and really not ready for actual users. annnnyhow, a major client is getting on-boarded and it turns out somebody told them we have a functioning enterprise sso system. last status update i gave was "yeah it works for internal users but that's it until somebody tells me to do more work." and i'm getting messages asking "why doesn't it work", etc. (it's not as lovely as it sounds, totally not my fault but i'm not getting blamed, yet). if i werent so checked out i'd be stressed but i just don't give a poo poo. DONT THREAD ON ME fucked around with this message at 18:54 on Jul 17, 2018 |
# ¿ Jul 17, 2018 18:52 |
|
yep this sucks
|
# ¿ Jul 17, 2018 19:08 |
|
seriously considering giving school another go atm. obviously to pursue at least a masters but if i'm gonna do it i guess i should do a phd. i'd have to do most of undergrad though, which would be costly. and weird.
DONT THREAD ON ME fucked around with this message at 02:39 on Jul 18, 2018 |
# ¿ Jul 18, 2018 02:34 |
|
moonshine is...... posted:terrible python/c programmer checking in. Will be a terrible rust programmer when the ide situation feels better. i'm fine with intellij rust. the big missing feature is intellij refactoring. i find this to be the most painful part of rust. adding a single type parameter or lifetime to a trait is painful, even in my relatively small projects. i cant imagine how annoying it is to modify traits in a larger project (although i guess good modular design helps here). i've found refactoring to be so painful that i've started building very small vertical prototypes before building a component. which is honestly a really good thing and something i wish i'd started doing sooner.
|
# ¿ Jul 18, 2018 02:48 |
|
yeah i don’t know what im talking about. i think i just read something stupid about masters being the new bachelors or whatever. i dont know much about academia.
|
# ¿ Jul 18, 2018 03:46 |
|
i just want to get the most bang for my buck is what im saying
|
# ¿ Jul 18, 2018 03:47 |
|
akadajet posted:i saw the same one at work with '.net' and then again as 'java' it honestly probably applies to anything
|
# ¿ Jul 18, 2018 04:28 |
|
fantastic news everyone!! you'll all be excited to know that my HKT embedding in rust is working without the terrible overhead of packing every possible kind into a single enum. the trick was to model computations over kinds as what is basically lazy iterator with a special evaluator built in. code:
code:
the interface suffers quite a bit but it still accomplishes my goals. the enum interface is considerably better but i'm pretty sure you're not going to do better without modifying the compiler: code:
code:
why am i doing this? DONT THREAD ON ME fucked around with this message at 04:35 on Jul 19, 2018 |
# ¿ Jul 19, 2018 04:02 |
|
oh yeah coroutines motherfuckers!!code:
|
# ¿ Jul 19, 2018 04:21 |
|
JawnV6 posted:hi, i still know absolutely nothing about "kinds" despite several generous attempts, but i DO know benchmarking anyhow as you say: vec for sure has at least unsafe optimizations that i could probably implement. but i wouldn't be surprised if there's compiler boosting. so i'm optimistic about where i'll be able to get performance. but yeah, uh, testing a bigger list, that makes sense. same benchmark as before but with 10,000 entries in the list: code:
quote:is 'eval' up there a language feature kicking into an interpreter or a hook of your implementation? quote:
yeah, i think so. tinaun posted:male shoegaze you should write a blog chronicling your HKT rust adventures, there's fp nerds on the lang team who would probably love to read about it i decided that i was going to blog about it early on so i've actually been taking notes and stuff. thanks for the prodding, the hard part now is not giving up when i decide that it's all stupid. e: my benchmark currently maps the `Vec<i32>` to a `Vec<String>`, if i skip the string formatting step and just multiply the int a couple of times, the native implementation does much, much, much better. code:
DONT THREAD ON ME fucked around with this message at 13:31 on Jul 19, 2018 |
# ¿ Jul 19, 2018 13:08 |
|
JawnV6 (or anyone else): recommendations on where to get started learning assembly? it's about time. don't say reading luigi's posts
|
# ¿ Jul 19, 2018 13:24 |
|
Lutha Mahtin posted:you could look into a textbook or one of those open online classes for an undergrad level "computer organization" course. this is the class where you learn assembly and how the processor, uh, processes it
|
# ¿ Jul 19, 2018 16:56 |
|
goddamn i'm so excited to have a year to study this stuff in earnest rather than cramming at night or on weekends when i'm already tired.
|
# ¿ Jul 19, 2018 17:13 |
|
VikingofRock posted:Hey male shoegaze if you're getting exponential compilation times you should file an issue on the rust GitHub. They take solving that sort of thing pretty seriously so I'm sure they would be very interested in hearing about your case. yeah i plan to. i only hit the issue last night and i need to isolate a test case first because my poo poo is pretty crazy right now.
|
# ¿ Jul 19, 2018 18:35 |
|
lol there’s a loop in our message bus wreaking havoc. i warned that this would happen if we continued to rely on kinesis as our only method of ipc for our 30+ micro services, but service to service calls are still forbidden because they create coupling DONT THREAD ON ME fucked around with this message at 17:47 on Jul 20, 2018 |
# ¿ Jul 20, 2018 17:45 |
|
I honestly don't know much about how academia functions, I mostly threw the PhD thing out because if I'm going to go get an undergraduate degree at 32, I want to make sure that I'm getting the most out of it. If a masters is sufficient to unlock the jobs I'm interested in, that's fine. But really, I think that I'll probably be able to get myself on the right path with a year of dedicated study, making open source contributions in the areas I'm interested in, and being willing to accept positions that pay less than I'm making now. What it comes down to is: When I started my career, I chose web because it was the most accessible path for a very inexperienced programmer with no college degree. Since then, I've been operating under the assumption that webdev is just the best I'm gonna be able to do (as a terrible programmer with no college degree). But honestly, I'm a great programmer who works very hard and there's no reason for me to limit myself to webdev when I desperately want to do something else. I shortsell myself ITT as a defensive mechanism because it's easier for me to pretend to not care than it is to care and be wrong. But honestly, I love this poo poo, I am serious about programming, and I don't want to spend my career figuring out how to shoehorn functionality into CRUD apps with developers who just want to clock out at the end of the day and never think about programming again (not that there's anything at all wrong with that, but it's not me).
|
# ¿ Jul 20, 2018 19:12 |
|
i do realize that im setting myself up for a big disappointment when i realize that everyone is doing garbage programming. but there must be fields that are better than webdev
|
# ¿ Jul 20, 2018 19:30 |
|
CPColin posted:lol don’t laugh at my soul
|
# ¿ Jul 20, 2018 21:25 |
|
CPColin posted:sorry lol apology accepted
|
# ¿ Jul 20, 2018 22:12 |
|
when i got here all of these services were running on the same host, but all communication was still done over kinesis, this is better than a monolith because
|
# ¿ Jul 21, 2018 02:34 |
|
it's not fair to make fun of the one host thing because that was really just an early phase startup decision. nobody wanted to keep things that way. but here's something we can make fun of: all of our domain models are defined in a single project. this project gets included in all of the services. the shared models are used when synchronizing data between services: when one service gets an update, it updates it's document in mongo and then dumps the document into the pipeline. the consumers then read the data out of kinesis and write it back out (sometimes altered, sometimes not) to their own mongo database. quick sidebar: the size of these models is, in some places, exceeding the 1mb kinesis message limit. compressed json. this approach is really bad for lots of reasons that i don't want to enumerate. but what really bothers me is that this is so obviously a problem of our services being inherently coupled: 90% of our services share 90% of the same data, and this is because 90% of our services should just be in one big monolithic app. they separated them because microservices scale well, the same reason they chose mongo as the datastore for relational medical data, and the same reason our microservices are now on kubernetes. (all of this despite the fact that even if we're wildly successful, we will never have more than maybe 100k concurrent users). so rather than do the smart thing and start to consolidate services where possible, we're just decoupling even more: the model project I mentioned has been killed off. which sounds like a good thing, right? no: now each service has its own version of the project, with unneeded models pruned out. we just copy and pasted everything. this has already caused multiple production problems. the reason we're doing this is to decouple. i'm not just injecting that: it's literally the reason we did it. i really love the people i work with for the most part but i am so glad i'm leaving. i tried really hard to fix this dumpster fire and that was very stupid of me.
|
# ¿ Jul 21, 2018 03:16 |
|
jit bull transpile posted:I didn't realize you're in Healthcare it now. I'm no longer surprised. Every piece of health care software bar none is a piece of poo poo cargo culting bad programming paradigms badly 10 years after their heyday. yeah i'm getting out. really not my thing at all.
|
# ¿ Jul 21, 2018 03:25 |
|
lol @ having a database schema , what a peasant for real this place has soured me on ever wanting to deal with data in a serious way. i am way the gently caress over data forever.
|
# ¿ Jul 21, 2018 04:42 |
|
honestly i don't want to touch a database ever again. mongo is so bad. i'm sure i'll have to use a sql database again and i'm sure it will be better than mongo but if anyone ever tries to make me use nosql for anything that is not a great use case for nosql i am going to say no, sql. sql only.
|
# ¿ Jul 21, 2018 04:45 |
|
yeah tools development is appealing to me. ideally i'd be working on something where the end user is other programmers. libraries, frameworks, tools, etc. because, you know, i want to work on things i'm interested in, and i'm interested in programming. but i think these jobs are pretty competitive. DONT THREAD ON ME fucked around with this message at 05:17 on Jul 21, 2018 |
# ¿ Jul 21, 2018 05:04 |
|
Finster Dexter posted:I didn't know your full situation... but it's actually somewhat similar to my own path about 10 years ago. From your posts you seem overqualified to be just webdev, imho. If you are in the U.S. I don't see why you need to accept less pay to get out of webdev. You really shouldn't have to, unless you're doing p-lang webdev (php or js), but even then, you could spend a few weeks to a month going through a book on C# and apply to a .NET SSE position if you have at least 3+ years of experience. The horrible awfulness of webdev will prepare you for the horrible awfulness of enterprise software dev or whatever. And if you are js or whatever, just get a SSE position that works with node (lmao). appreciate it and thanks for the advice. this job was actually my jump from "full stack ruby developer" to "full backend scala developer" and i'm very happy about that move. i've definitely escaped plang hell (scala is its own hell, but i love it). if i do go back to school, math will definitely be involved, but i dont know how much. math was my focus when i tried school the first time, and it didn't work out, but that's a totally different post. Fiedler posted:great, you've figured out that you want to write developer tools. now immediately go apply for those jobs. worst case is you're not hired and you try again in 6 months. yeah i'm definitely doing this once i'm done working. even if i have no intention of taking the jobs i need to know what the field looks like and i don't currently. tef posted:like microservices don't make things scalable, nor do monoliths, like monolithic means 'we invested in our feature dev cycle' and microservices means 'we invested in our platform tooling', or maybe monolith means 'we are tired of cross repo synchronization and deployment' and microservices is 'we are tired of long build times and want to work in isolation' the "invested in our feature dev cycle" bit is really true and why the micros thing hurts so much here. we are very, very focused on feature dev with all that comes with it. there's nothing wrong with that, but trying to iterate on features really fast in a microservices architecture is really really hard. also a big thanks to everyone who has put up with all of these lovely posts. double thanks to those of you who have troubled to give advice. i really appreciate it.
|
# ¿ Jul 21, 2018 12:34 |
|
it’s the nesting that kills me. like yeah no joins sucks but it doesn’t add that much cognitive overhead if you just accept the poo poo performance. it’s the nesting that kills me. change a document? hope you remembered to update that document everywhere it’s been nested! good luck! no transactions is balls though
|
# ¿ Jul 21, 2018 15:46 |
|
yeah i dont know that mongo is any worse than other document stores; mongo is the only one i've used seriously. my issue is more with relational data being backed by a document store, that's the problem. it's an absolute nightmare to maintain.
|
# ¿ Jul 22, 2018 20:40 |
|
tef's posts always remind me that i need to learn more about distributed systems.
|
# ¿ Jul 22, 2018 20:52 |
|
[quote="eschaton posted:Rust hacking suggestion: take your functor thingy and profile the compiler and see if you can figure out why the slow part is slow, and what to do to fix it eschaton" post="486351738"] also spend your time after this job writing tools hacking on Rust itself would be a good start so would hacking on Swift, or writing new static analyses for clang, or helping with the SBCL POWER9/ppc64le port, that sort of thing [/quote] yeah working on understanding the rust compiler issue as we speak. it's taking me a while to isolate a good test case but i'm 100% sure it's related to generators. but i probably wont make a ton of progress until i'm done with this job. i would love to work on swift stuff too so i'll see what's going on! thanks for the recs!
|
# ¿ Jul 22, 2018 20:58 |
|
or that.
|
# ¿ Jul 22, 2018 20:59 |
|
jsoup looks ok???
|
# ¿ Jul 23, 2018 15:38 |
|
prisoner of waffles posted:tef/thread, is FoundationDB legit? It sounds pretty good as a CP system, with the "sane default" of no transactions >5 seconds long ya im curious too, it makes a lot of promises that sound like bs but i don’t know enough to know
|
# ¿ Jul 23, 2018 17:17 |
|
jit bull transpile posted:Can someone explain what is meant by "composability"? It's a term that is used itt all the time but I've never encountered it elsewhere. to contrast with inheritance, in the "car extends vehicle" example instead of defining a complicated "Vehicle" interface that makes a lot of assumptions about what a vehicle is, you'd define smaller modules like "HasWheels", "ContainsPassenger", "KillsPedestrians" etc. Then you can have "Car extends HasWheels with ContainsPassenger" or "DriverlessCar extends HasWheels with KillsPedestrians". DONT THREAD ON ME fucked around with this message at 21:59 on Jul 23, 2018 |
# ¿ Jul 23, 2018 21:56 |
|
composability good, class inheritance bad willing to die on this hill
|
# ¿ Jul 23, 2018 22:01 |
|
Captain Foo posted:negation is not composable with square roots unless you include the complex library wish your posts weren’t composable
|
# ¿ Jul 23, 2018 22:07 |
|
|
# ¿ Sep 18, 2024 18:22 |
|
ok what’s the best blogging option in 2018? this is about shameless self promotion and not a burning passion to share my ideas with the world so im willing to pay i guess. ideally there’d be analytics i guess. not sure about comments: id guess that comments generate more traffic but it gives people an opportunity to point out how stupid i am right there in the blog, as opposed to offsite. also people with blogs: do you think it’s helped your career much?
|
# ¿ Jul 23, 2018 22:14 |