|
tfw you get a new feature request that's stupid and you think its gonna be a pain in the rear end but upon looking at your code you realize you planned for it
|
# ? Feb 17, 2016 21:19 |
|
|
# ? May 26, 2024 17:04 |
|
necrotic posted:after a little playing with elm im starting to get the hang of things. one thing is really bothering me, however: the debugger does not work with StartApp.start, only StartApp.Simple.start. the randomGif sample in the arch repo shows the issue https://github.com/evancz/elm-architecture-tutorial/tree/master/examples/5 (debug mode fails with some forEach error) turns out ports break the debugger until a fix from nov is merged and released
|
# ? Feb 17, 2016 21:59 |
|
~Coxy posted:my favourite is being able to use lambdas in the Immediate window wish eclipse could do this
|
# ? Feb 17, 2016 22:17 |
|
necrotic posted:after a little playing with elm im starting to get the hang of things. one thing is really bothering me, however: the debugger does not work with StartApp.start, only StartApp.Simple.start. the randomGif sample in the arch repo shows the issue https://github.com/evancz/elm-architecture-tutorial/tree/master/examples/5 (debug mode fails with some forEach error) um yeah this currently sucks. theres people working on improving it a lot and i guess it will be fixed in 0.17, which should be here in march/april. speaking of that though, there's a guy right now working on elm reactor to get the following behavior: 1. it works with ports and effects and stuff, of course 2. it saves all events that happen 3. events are exportable and importable from within elm reactor, which means that 4. someone could be testing your app, find a bug, and then they literally send you the event file which is guaranteed to reproduce the issue exactly as they saw it 5. which will own, own, own
|
# ? Feb 18, 2016 01:42 |
|
fart simpson posted:um yeah this currently sucks. theres people working on improving it a lot and i guess it will be fixed in 0.17, which should be here in march/april. is there a place i can see this yet? a branch, or pr? i think my biggest gripe right now is that a fix for ports and the debugger has been available since _november_ and its still not released. bug fixes are a thing, yall. overall though i am enjoying my first dive into the language. people in slack have been very helpful and responsive. theres just some organizational things that could be either better or easier to access.
|
# ? Feb 18, 2016 01:57 |
|
necrotic posted:is there a place i can see this yet? a branch, or pr? i havent seen it yet, i just heard it on a podcast with one of the guys that works at the same company as evan (the creator of elm). he said someone at their company is working on this right now. but yeah i agree with you there. right now evan personally curates everything and he's too busy to keep up. useful prs go unmerged for too long at the moment. like here's one of my prs to get the automated tests working again on the core libraries: https://github.com/elm-lang/core/pull/447 until that gets merged the core package doesn't have any tests...
|
# ? Feb 18, 2016 02:09 |
|
im expecting that organizational part of it to get better though. evan recently switched companies and the new company is heavily involved & invested in elm as a language and growing it. they announced that there would be some organizational changes to address some of this stuff but no details yet
|
# ? Feb 18, 2016 02:11 |
|
abraham linksys posted:ugh at my current gig we have a monorepo because the overhead of maintaining a bunch of different repos was annoying, but now we have a new problem where our CI system is super naive and just runs all the tests any time someone pushes i know we have jenkins triggering builds based on the exact files that changed so i'm pretty sure it can do this i'm not a jenkins guy though so who knows how
|
# ? Feb 18, 2016 02:37 |
|
fart simpson posted:im expecting that organizational part of it to get better though. evan recently switched companies and the new company is heavily involved & invested in elm as a language and growing it. they announced that there would be some organizational changes to address some of this stuff but no details yet yup, NoRedInk right? there seems to be some communal effort towards improving things, but its always slow to start. things like elm-tutorial.org are a good start
|
# ? Feb 18, 2016 03:13 |
|
necrotic posted:yup, NoRedInk right? there seems to be some communal effort towards improving things, but its always slow to start. things like elm-tutorial.org are a good start yeah, noredink. oh also you should use sublime text with the elm plugin because thats my plugin and i need to see my users count go up
|
# ? Feb 18, 2016 04:59 |
fart simpson posted:im expecting that organizational part of it to get better though. evan recently switched companies and the new company is heavily involved & invested in elm as a language and growing it. they announced that there would be some organizational changes to address some of this stuff but no details yet This is awesome news, and I'm pretty excited for the future of elm
|
|
# ? Feb 18, 2016 05:08 |
|
fart simpson posted:yeah, noredink. oh also you should use sublime text with the elm plugin because thats my plugin and i need to see my users count go up nah im one of those idiots who cant stop using vim
|
# ? Feb 18, 2016 05:54 |
|
abraham linksys posted:ugh at my current gig we have a monorepo because the overhead of maintaining a bunch of different repos was annoying, but now we have a new problem where our CI system is super naive and just runs all the tests any time someone pushes monorepos are a disastrous anti-pattern with open source tools
it doesn't pay to blindly ape facebook and google. they have huge profits and huge teams to manage proprietary tooling and infrastructure. you don't. don't try to build a weak-sauce google out of open source bits intended for entirely different scenarios
|
# ? Feb 18, 2016 06:58 |
|
"it hurts when i hit myself with a hammer. it must be that hammer designs are super naive" -- abraham linksys
|
# ? Feb 18, 2016 06:58 |
|
we didn't blindly ape other companies we just got sick of the overhead of keeping different repos in sync and using the same internal dependencies/libraries we have a bunch of services sharing a bunch of common code, plus things like frontends that need to stay in sync with backend APIs, etc. monorepos made more sense than submodule hell and making and syncing 3 different PRs to change our DAL code, API endpoints, and frontend for each feature
|
# ? Feb 18, 2016 07:25 |
|
A monorepo makes some degree of sense in any environment where you control all the code, depending on how much code-reuse and integration you have between projects. Unfortunately, it's a bit infeasible to run a dozen open-source projects as a single repository (and even if you did, you wouldn't even see any of the benefits), which then leads it to being a second-class use case at best in open-source tooling. So you typically have to put work and/or money in to the tooling yourself in order to make it actually work.
|
# ? Feb 18, 2016 08:17 |
|
abraham linksys posted:we didn't blindly ape other companies we just got sick of the overhead of keeping different repos in sync and using the same internal dependencies/libraries the alternative to monorepos for most ppl is semver, not some horrible monster you need poke in multiple places to move
|
# ? Feb 18, 2016 13:03 |
|
Brain Candy posted:the alternative to monorepos for most ppl is semver, not some horrible monster you need poke in multiple places to move not really sure how this would help with my complaint like with split repos if i make a feature I have to create a feature branch for our DAL codebase (which is shared by multiple services), a feature branch for whatever the backend service I'm changing is, and a feature branch for the frontend to that service. then i have to make sure all of these feature branches get PRs that are merged into their respective masters then whether you're using a git submodule to pull in a dependency or an internal package registry where packages are published with semver-following versions, you still have a huge process overhead compared to "the code on master in this one repo is the code running on everything and you never have to think about it" also local development with split repos is a loving nightmare because assuming the code on your filesystem is the code you're running everywhere (and it should be because how else would you develop features involving multiple modules), when you swap between feature branches you have to swap between branches in multiple repos and you can easily end up in a broken state because you forgot something abraham linksys fucked around with this message at 13:16 on Feb 18, 2016 |
# ? Feb 18, 2016 13:13 |
|
suffix posted:i know we have jenkins triggering builds based on the exact files that changed so i'm pretty sure it can do this yeah, we have jenkins watching a directory, there's an option in the job configuration page
|
# ? Feb 18, 2016 14:36 |
|
Notorious b.s.d. posted:monorepos are a disastrous anti-pattern with open source tools facebook and goggle don't use p4 anymore either, it scales badly if you want to be monorepo man with git you're gonna have a bad time
|
# ? Feb 18, 2016 14:46 |
|
TwoDice posted:monorepo man mods
|
# ? Feb 18, 2016 15:07 |
|
abraham linksys posted:not really sure how this would help with my complaint We use a lot of small repos on the team I'm working on because we maintain a different set of HTTP routers for different product, but they do have a lot of libraries in common. Otherwise, we do also maintain a bunch of Erlang libraries that are very generic and can be used in other products internally. Doing that pretty much forces us into two patterns: - Small repos and defer to the build tool - Vendor in deps, which is different from a monorepo. The pattern is pretty much: - Work on the main feature in the big thing and offshore the feature branches to each subdep - You can try the feature branches locally because our build tool lets us symlink-to-override libraries in each project - push all the feature branches and the big one and open a PR - ask for a review on the main project, link to the PRs of the subprojects - each bit is reviewed the way they would if they were in a single repo - merge the feature branches and maybe tag em - merge the main branch This tends to work well and has maybe a 15 mins overhead. The biggest nightmare I see with this is when we have multiple people working on multiple diverging products at once and everyone gets into conflicting subdeps modifications. Then someone needs to step up and coordinate that, but I believe it would be the same otherwise.
|
# ? Feb 18, 2016 16:01 |
|
facebook never used p4, they switched from svn to hg. google was using p4 well into ridiculously scaled terrority and now run their own perforce-like. amazon switched from perforce to (for a very short period of time) svn to git. microsoft stores their code on bill gates old laptop or something. fwiw amazon does repo-per-package and actual release versioning at ~*scale*~. most every team practices trunk based development for their packages, but instead of cutting release branches or tags we cut a version set that describes the collection of artifacts, which we push through pipelines to various tests and environments. i really enjoy the tooling but i don't see how our solution could scale down to smaller groups because of the infrastructure involved. a monorepo takes away a lot of that complexity, you just need the remote caching and distributed build support that doesn't exist in open source tooling.
|
# ? Feb 18, 2016 16:22 |
|
bazel and buck both offer a little bit of the remote caching/distributed build stuff in open source so it's becoming a lot more feasible to do monorepo without a big in-house development effort. git is still a complete non-starter though. the 'easy' workaround for abraham linksys's problem if theyre on svn or p4 is set up separate builds in jenkins which are monitoring subtrees rather than the repo root but if its git then yeah youre going to have issues.
|
# ? Feb 18, 2016 17:30 |
|
do you have any idea why bazel has been getting a lot of talk over buck when buck is literally a reimplementation of blaze? or is it just because its recently released.
|
# ? Feb 18, 2016 17:45 |
|
we've been using a git-based monorepo for 6-7 months now and haven't had any performance issues. we don't vendor any large files or anything, maybe that helps? fwiw our codebase is like 25 megs and my local repo is around a gig at the moment abraham linksys fucked around with this message at 17:55 on Feb 18, 2016 |
# ? Feb 18, 2016 17:51 |
|
I've been using git submodules recently and that's worked OK This is just for real basic dependencies across repos tho
|
# ? Feb 18, 2016 18:37 |
|
Brain Candy posted:some horrible monster you need poke in multiple places to move don't talk smack about my mom
|
# ? Feb 18, 2016 19:02 |
|
JimboMaloi posted:bazel and buck both offer a little bit of the remote caching/distributed build stuff in open source so it's becoming a lot more feasible to do monorepo without a big in-house development effort. git is still a complete non-starter though. the 'easy' workaround for abraham linksys's problem if theyre on svn or p4 is set up separate builds in jenkins which are monitoring subtrees rather than the repo root but if its git then yeah youre going to have issues. cant you tell Jenkins which projects in the source to build?
|
# ? Feb 18, 2016 19:07 |
|
Progressive JPEG posted:I've been using git submodules recently and that's worked OK git submodules seem worse than i expected them to be
|
# ? Feb 18, 2016 19:20 |
|
you could use git subtrees instead of submodules, they are bad too but in different ways.
|
# ? Feb 18, 2016 19:21 |
|
fart simpson posted:git submodules seem worse than i expected them to be the only time i ever used them i regretted it
|
# ? Feb 18, 2016 19:26 |
|
i tried them once a few years ago and i don't even remember why they were bad but i stopped using them pretty quick
|
# ? Feb 18, 2016 19:27 |
|
quick, someone explain to me why elm exists
|
# ? Feb 18, 2016 19:34 |
|
Tankakern posted:quick, someone explain to me why elm exists because web development sucks?
|
# ? Feb 18, 2016 19:36 |
|
Tankakern posted:quick, someone explain to me why elm exists http://elm-lang.org/papers/concurrent-frp.pdf
|
# ? Feb 18, 2016 19:37 |
|
if you mean why does anyone care about it & use it though, then it;'s because functional programming is really food and functional reactive programming is a really nice way to do ui stuff, and elm exists in a niche where it gets you most of the good parts of something like haskell + an frp library without 95% of the complexity overhead
|
# ? Feb 18, 2016 19:45 |
|
i meant really good not really food
|
# ? Feb 18, 2016 19:46 |
|
its almost lunchtime, i could go for some food?
|
# ? Feb 18, 2016 19:47 |
|
|
# ? May 26, 2024 17:04 |
|
what food would you compare elm to? a burrito?
|
# ? Feb 18, 2016 19:50 |