There have been multiple accounts created with the sole purpose of posting advertisement posts or replies containing unsolicited advertising.

Accounts which solely post advertisements, or persistently post them may be terminated.

programmer_humor

This magazine is from a federated server and may be incomplete. Browse more on the original instance.

pimeys , in me_irl

A 15000 line PR landing on a Friday evening for the lucky random reviewer to open on Monday. “Please approve it fast so we avoid too many conflicts.”

ohlaph ,

I would review it and immediately tell them to break it into bite sized PRs.

My coworker kept doing that. We had several talks about it. Other members of our team had talks about it with them, and even our manager. Finally, I marked the PR as needs work, told them to break it into several PRs. They weren’t happy, but I was tired of dealing with PRs that were 30+ files, unrelated in change, and over 1500 lines of code changes. They were pretty mad at me for a while. But it stopped shortly afterwards.

It shouldn’t take more than an hour to review a PR.

pimeys ,

Yeah I’ve been working a lot in my life in seed stage startups and it is quite common in the early stages… I try to make things change though.

douglasg14b ,
@douglasg14b@programming.dev avatar

There is no context here though?

If this is a breaking change to a major upgrade path, like a major base UI lib change, then it might not be possible to be broken down into pieces without tripping or quadrupling the work (which likely took a few folks all month to achieve already).

I remember in a previous job migrating from Vue 1 to Vue 2. And upgrading to an entirely new UI library. It required partial code freezes, and we figured it had to be done in 1 big push. It was only 3 of us doing it while the rest of the team kept up on maintenance & feature work.

The PR was something like 38k loc, of actual UI code, excluding package/lock files. It took the team an entire dedicated week and a half to review, piece by piece. We chewet through hundreds of comments during that time. It worked out really well, everyone was happy, the timelines where even met early.

The same thing happened when migrating an asp.net .Net Framework 4.x codebase to .Net Core 3.1. we figured that bundling in major refactors during the process to get the biggest bang for our buck was the best move. It was some light like 18k loc. Which also worked out similarly well in the end .

Things like this happen, not that infrequently depending on the org, and they work out just fine as long as you have a competent and well organized team who can maintain a course for more than a few weeks.

douglasg14b ,
@douglasg14b@programming.dev avatar

The follow on. Lots and LOTS of unrelated changes can be a symptom of an immature codebase/product, simply a new endeavor.

If it’s a greenfield project, in order to move fast you don’t want to gold plate or over predictive future. This often means you run into misc design blockers constantly. Which often necessitate refactors & improvements along the way. Depending on the team this can be broken out into the refactor, then the feature, and reviewed back-to-back. This does have it’s downsides though, as the scope of the design may become obfuscated and may lead to ineffective code review.

Ofc mature codebases don’t often suffer from the same issues, and most of the foundational problems are solved. And patterns have been well established.

/ramble

ohlaph ,

It was simply constant refactors, moving random stuff, etc. like, every week. It was unnecessary change.

catacomb ,

I’d be pulled up at my job for any PR exceeding a few hundred lines. I don’t even know what they’d do if I just dropped a 15000 line stinker.

douglasg14b ,
@douglasg14b@programming.dev avatar

Just a few hundred?

That’s seems awfully short no? We’re talking a couple hours of good flow state, that may not even be a full feature at that point 🤔

We have folks who can push out 600-1k loc covering multiple features/PRs in a day if they’re having a great day and are working somewhere they are proficient.

Never mind important refactors that might touch a thousand or a few thousand lines that might be pushed out on a daily basis, and need relatively fast turnarounds.

Essentially half of the job of writing code is also reviewing code, it really should be thought of that way.

(No, loc is not a unit of performance measurement, but it can correlate)

catacomb ,

To be honest, I agree they should be able to be larger at times.

I had a lot of disagreements when I was on a new codebase, knew what I was doing and I was able to push a lot of code out each day.

The idea is to have them small, easily readable with a tight feedback loop. I argued that bootstrapping a project will have a lot of new code at once to lay the foundations and my communication with the team was enough feedback. If I split it up, each PR would have been an incomplete idea and would have garnered a bunch of unnecessary questions.

That said, I think it’s generally pretty easy to put out multiple PRs in a day, keeping them small and specific. As you say, half of the job is reading code and it’s nicer to give my coworkers a set of PRs broken down into bite sized pieces.

HiddenLayer5 , in GoOn

Name every protocol

QuazarOmega ,
  • TCP
  • UDP
stringere ,

UDP

I’d love to tell you a joke about UDP but I’ll never know if you get it.

QuazarOmega ,
  • TCP
  • UDP

(Yes, this is a TCP joke)

cyborganism , in Yes

All you need are Bash scripts with chroot and cgroups and some ssh access.

Orbituary , in GoOn
@Orbituary@lemmy.world avatar

deleted_by_author

  • Loading...
  • takeda ,

    That’s 1/256th of IPv4

    0/0 and ::/0

    Orbituary ,
    @Orbituary@lemmy.world avatar

    Funny. I put 0/0 first then reconsidered, but I don’t know why.

    brothershamus , in Correcting > Helping
    @brothershamus@kbin.social avatar

    It's an older meme, sir, but it checks out. I was just about to upvote it.

    interolivary , (edited ) in JavaScript's days are numbered
    @interolivary@beehaw.org avatar

    I honestly don’t quite get why it’s so common to hate Javascript.

    I mean, it’s not my favorite language to put it mildly (I prefer type systems that beat me into submission) but as far as popular dynamically typed languages go, it’s not nearly the worst offender out there. Yes, lol, weird things equal weird things when you use == but that’s not exactly unique among dynamic languages, and some people couldn’t come to terms with it not being like Java despite the name so they never bothered learning how prototypal inheritance works, and also who the fuck needed both null and undefined when either of those by itself is already a mistake and introducing them to a language should be grounds for a nice, solid kick to the groin.

    But, warts and all, the implementations are generally reasonably performant as far as these things go, the syntax is recognizable because eg. braces are common whether we like them or not and notably also survives copy-pasting from eg. the internet or anything that doesn’t use the same whitespace you do, and it’ll happily let you write code in a quite multiparadigm way, leading to some people to insist Javascript is kind of like Scheme and other people to insist Javascript is nothing like Scheme.

    So, shit could be worse. And by “shit” and “worse” I mean eg. Python, notable for achievements such as: being one of the first if not the first language with a designer who huffed enough solvents to think that semantically significant whitespace is a great idea especially combined with no real standardization on whether you need to use tabs or spaces, and which often doesn’t survive being copy-pasted from the web and is a nightmare to format; being unable to actually run anything in parallel up until very recently because lol why bother with granular locking in the runtime when you can just have one global interpreter lock and be done with it; or being popular in part due to the fact that its FFI makes it easy to write modules for it in languages that aren’t a crime against common sense and can run faster and more parallel than an 80’s BASIC interpreter. And let’s not even go into the whole “virtual environment” thing.

    So while Python’s not quite INTERCAL-bad, at least INTERCAL doesn’t have significant whitespace and its manuals are really damn funny.

    And then there’s eg. Ruby, with 9999 ways to do everything and all of them so slow that it aspires to one day be as fast as INTERCAL, and PHP which is a practical joke that went too far and somehow managed to eventually convince people it’s actually a real language.

    edit: oh and if you don’t know about INTERCAL, I can highly recommend checking out the the C-INTERCAL revision’s manual, which includes eg. a very helpful circuitous diagram and a logical table to explain one of its more odd operators. There’s also a resource page that’s maintained by one of the perpetrators of the C-INTERCAL revision.

    tiny_electron ,

    This reads like a copy pasta

    interolivary ,
    @interolivary@beehaw.org avatar

    Mission accomplished

    __init__ ,

    There are two types of languages: ones people bitch about, and ones no one uses

    interolivary ,
    @interolivary@beehaw.org avatar

    I dunno; people bitch about Haskell too

    ephos , in Best VS Code theme

    My goodness… This may beat out the the Windows 3.1 hotdog stand theme!

    IdiosyncraticIdiot , in Okay, which one of you Java devs did this

    Python is a virus

    vsh ,
    @vsh@lemm.ee avatar

    Least racist end-user

    BeigeAgenda ,
    @BeigeAgenda@lemmy.ca avatar

    I’ll bite, which programming language should people use instead of Python?

    DacoTaco ,
    @DacoTaco@lemmy.world avatar

    Python is considered a programming language? I still classify it as scripting lol

    That said, i’d personally use good old c/c++ or even c#/.net over python lol

    BeigeAgenda ,
    @BeigeAgenda@lemmy.ca avatar

    Yes Python is definitely a programming language, I write in C/C++/C#/Python/Bash each language has its areas where they are best.

    I prefer Python for DevOps related code and writing smaller programs/tools. You just get so much handed to you with Python’s toolbox, it just makes things easier, you can use it as a scripting language or write a modular object oriented program.

    I use C/C++ when performance matters and I want things to be Done right TM, and make sure to use all the help the compilers and static code checkers can give.

    Zebroszczak ,

    Python is just scripting language over C. Change my mind

    BeigeAgenda ,
    @BeigeAgenda@lemmy.ca avatar

    cpython yes, but not ironpython or jython :-)

    AVincentInSpace ,

    Literally fucking what? Python is object oriented and garbage collected, and people write production web backends in it.

    Xabis ,

    C# “compiles” to intermediary bytecode, then ran in a vm. Same as Java. I’d say that’s no better than a “scripting” language with a JIT.

    DacoTaco , (edited )
    @DacoTaco@lemmy.world avatar

    I wouldnt say a vm (as there is no emulated hardware layer around the running code ) , but sure you made a valid point actually!

    30p87 ,

    Python is a scripting language, but it’s generally called a programming language, because there are no key differences in their features or workings. Just as C# and Java, Python is first compiled to .pyc files and then executed with a special program, eg. Mono for C#, OpenJRE for the second and just python for the latter, except for Python it’s more hidden. C# supports Classes, Python does, but C does not (officially) … so wouldn’t C be less of a programming language then?
    In the end, scripting languages are just defined as one by being easier and faster to run by all/most implementations as the “gcc main.c” and “./a.out” method of “real” programming languages, by just using “python main.py” or “node main.js” for your program. Therefore, they can be changed on the fly and added to another script.
    What IS generally called a scripting language is eg. Bash, as it’s not compiled, supports few features and is not that cross compatible (except maybe with eg. WSL).

    I’m a huge C/C++ fan, but some tasks just aren’t suitable for them. Parsing HTML/XML in C++? It’s possible, but a pain in the ass. I know it, I did it. Having parsed plans, tables and xml responses in C++, I can tell you Python is more suited for this job. The extra few milliseconds you save aren’t worth the hassle of verbose exception handling, non standard libraries which need different systems to stay up to date (some don’t support your make system of choice) and harder integrated extension support (you can’t just throw in a .py script for support of other providers, but need to explicitly integrate eg. lua support), especially if the bottleneck is not your code, with ~10 ms runtime, but some random ass server with ~100 ms ping.

    xmunk ,

    Bash is a programming language… honestly it’s like rectangles and squares - all scripting languages are programming languages but not all programming languages are flexible enough to be commonly considered scripting languages.

    xmunk ,

    Well, obviously, we should all exclusively program in Haskell.

    BeigeAgenda ,
    @BeigeAgenda@lemmy.ca avatar

    I would say Erlang but hey if you are in a Haskell mood then by all means.

    marcos ,

    Except for the parts where you need something like Rust, that would be an improvement.

    nogrub ,

    reject high level programming and reurn to assembly

    lugal , in thisIsGoingToBeASeriousDebate
    
    <span style="color:#323232;">def main(): 
    </span><span style="color:#323232;">    print("Hello world") 
    </span>
    
    lugal , in Language

    Don’t look up Danish numbers.

    Worst mistake of my life

    President_Pyrus ,
    @President_Pyrus@feddit.dk avatar

    9+(5-1/2)*20

    Source: Look at which instance I’m on.

    alx OP , in Race Condition
    @alx@programming.dev avatar

    knock knock

    who’s there?

    threads.

    threthreadsads whthreadso?

    railsdev , in Harder Drive: Hard drives we didn't want or need

    Where’s that Piped bot at? These links to Google services are killing me (completely blocked on my network).

    kryllic ,
    @kryllic@programming.dev avatar

    This might help: libredirect.github.io

    Vipsu , in Microsoft Edge could use a win
    @Vipsu@lemmy.world avatar

    Sounds like good opportunity for US and Europe to whip out some fines over Anticompetitive practices. With Microsoft sort of being repeat offender the fines should reflect that.

    Honestly with Edge being not too bad alternative for Chrome this sort of shady behavior from Microsoft doesn’t do it any good at least in my eyes.

    simin , in Microsoft Edge could use a win

    here i go…strangely enough i used edge for a while and did not switch back

    PersnickityPenguin ,

    I use it at work all the time and frankly, it’s completely functional. I also prefer the Bing image search over Google images search these days… And I was a hardcore googler back in the day!

    max ,

    Same. It worked great for me with the profiles (personal microsoft account + uni microsoft account) until my uni disabled the bookmark syncing feature for all our accounts. For some odd reason.
    Then I switched to Firefox and I’m not turning back.

    Double_A ,
    @Double_A@discuss.tchncs.de avatar

    I used and liked it for a few years, but now they started filling it with bloat ware again… switched to Firefox last month.

    Granixo , in Microsoft Edge could use a win
    @Granixo@feddit.cl avatar

    I do use Edge as my main browser, for now.

    MaggiWuerze ,

    But why?

    Granixo ,
    @Granixo@feddit.cl avatar

    Because my university is very Microsoft-centric when it comes to software and infrastructure. So using Edge allows me to keep myself logged in and not having to introduce my credentials every time i need to do something.

    Semi-Hemi-Demigod ,
    @Semi-Hemi-Demigod@kbin.social avatar

    Maybe they haven't installed Firefox yet

    PixxlMan ,

    You need something to download Firefox from right?

  • All
  • Subscribed
  • Moderated
  • Favorites
  • [email protected]
  • random
  • lifeLocal
  • goranko
  • All magazines