This might be the worst thing about programming on a Mac.

Поделиться
HTML-код
  • Опубликовано: 6 сен 2024
  • Patreon ➤ / jacobsorber
    Courses ➤ jacobsorber.th...
    Website ➤ www.jacobsorbe...
    ---
    This might be the worst thing about programming on a Mac. // I use a Mac and usually, I love it. But, sometimes it drives me crazy, mostly due to the fact that some tools aren't well supported. This video goes over a few that I find myself missing the most - specifically, GDB and Valgrind.
    ***
    Welcome! I post videos that help you learn to program and become a more confident software developer. I cover beginner-to-advanced systems topics ranging from network programming, threads, processes, operating systems, embedded systems and others. My goal is to help you get under-the-hood and better understand how computers work and how you can use them to become stronger students and more capable professional developers.
    About me: I'm a computer scientist, electrical engineer, researcher, and teacher. I specialize in embedded systems, mobile computing, sensor networks, and the Internet of Things. I teach systems and networking courses at Clemson University, where I also lead the PERSIST research lab.
    More about me and what I do:
    www.jacobsorbe...
    people.cs.clem...
    persist.cs.clem...
    To Support the Channel:
    + like, subscribe, spread the word
    + contribute via Patreon --- [ / jacobsorber ]
    Source code is also available to Patreon supporters. --- [jsorber-youtub...]

Комментарии • 160

  • @not_ever
    @not_ever 3 года назад +129

    I once saw a post on LinkedIn saying how terrible and unusable Linux was because it didn't have all the debugging tools that Windows has. I almost died laughing.

    • @pxolqopt3597
      @pxolqopt3597 2 года назад +8

      The author of that article definately tried to download applications from google

  • @ahmadhadwan
    @ahmadhadwan 3 года назад +119

    i directly installed linux on my new laptop, it is just way better for programming, i don't have to use the windows api, i can install most of the libraries using my package manager, and i can use syscalls directly when writing in assembly

    • @jamess1787
      @jamess1787 3 года назад

      Sounds like you found an old install provided by shippit. Good luck.

    • @ahmadhadwan
      @ahmadhadwan 3 года назад +4

      @@jamess1787??

    • @daneemark4266
      @daneemark4266 3 года назад +4

      Linux is awesome but have some gaps. For instance when i want to use codeblocks for doing c/c++ stuff on my manjaro distro, the ui seems to be pretty broken

    • @nonnullptrhuman504
      @nonnullptrhuman504 2 года назад +3

      @@daneemark4266 don't use manjaro, it's a piece of crap... If u want arch derivatives use endeavour os instead.

    • @Abu_Ubaida9
      @Abu_Ubaida9 2 года назад

      I think it's because of the theme depending on if you use qt or gtk, you can change the one that isn't the main in the settings too

  • @monsterthrash
    @monsterthrash 3 года назад +39

    3:00 How do you seamlessly switch from a macOS terminal to a VM terminal for compiling and testing? Maybe a video on that setup would be helpful (I also find debugging a pain on macOS).

    • @YoloMonstaaa
      @YoloMonstaaa 3 года назад +4

      It's just a VScode feature, you saw him click on the other terminal.

    • @EnkiMVP
      @EnkiMVP 3 года назад +6

      you also have an extension on VScode for remote programming, you basically edit your source files on the VM and compile them there

  • @nourway3639
    @nourway3639 3 года назад +26

    I switched to linux more than a year now from mac it is a bit challenging sometimes, but it’s totally worth it ! Especially if you are interested in low level and system programming

  • @ndugar8540
    @ndugar8540 3 года назад +15

    I’ve been using a Docker container to run both of these tools on Mac with relatively low effort. Valgrind and GDB both work perfectly under Docker, would recommend giving it a shot.
    Edit: albeit this is analogous to a VM, but from my experience, it’s oftentimes quicker and easier to setup than a full VM.

  • @Squish888
    @Squish888 3 года назад +18

    An M1 Mac adds another layer of pain. Docker containers saved my life.

    • @captainfordo1
      @captainfordo1 2 года назад +1

      Doesn’t Rosetta do all the work for you?

  • @EnkiMVP
    @EnkiMVP 3 года назад +9

    gdb needs to be digitally signed first, you need to create a certificate and then sign it; also you need to kill taskgated before starting gdb. this is how I got it to work on my Macbook pro 16

  • @LRFLEW
    @LRFLEW 2 года назад +4

    I think the solution Apple expects you to use is to use the Clang sanitizers. They are generally faster than Valgrind, with the trade-off being that you need to recompile the code you want to test. Either the memory or address sanitizer (I forget which) should be able to catch the double-free bug that Valgrind did here.

  • @ramueller11
    @ramueller11 2 года назад +5

    I've programmed C on the three OSes and personally found Apple to be the worst experience. I remember at one point having to figure out how to upgrade an outdated OpenSSL binaries to connect to a server and it was basically a exercise in futility to compile from source. POSIX on Windows can be a pain to setup, but its definitely a viable option as well.
    What I was pleasantly surprised with was the relatively new Chrome OS to support a real Linux distro based on Ubuntu. VS Code is supported on it. So between the text editor, web browser and gnu terminal, it's a viable hobbist machine.

  • @jamess1787
    @jamess1787 3 года назад +2

    Objective-C anyone?
    (Is it even still a thing?)

    • @universalmusicgrouptalenta1307
      @universalmusicgrouptalenta1307 Месяц назад

      I was trying to find someone mention it ITS SO BAD like there’s so many cool apis on macOS that are locked behind objective c or swift

  • @jorionedwards
    @jorionedwards 3 года назад +52

    Don't apologize for not using Windows. It's pure pain for programming.

    • @lordadamson
      @lordadamson 3 года назад +10

      everything is pure pain for programming.

    • @aayushanand8285
      @aayushanand8285 3 года назад +1

      @@lordadamson can't be any more true😂

    • @bushidocodes
      @bushidocodes 3 года назад +4

      I suggest WSL for any Windows users out there. It's honestly a better developer experience than Mac OS at this point.

    • @akayysworld
      @akayysworld 3 года назад

      fr why the fuck is pip not in the path and python is py instead

    • @jorionedwards
      @jorionedwards 3 года назад +1

      @@bushidocodes My trade school actually used WSL to introduce people to Linux. Unfortunately only the bare basics were taught (navigation, ifconfig, etc), man was never mentioned, and we were expected to Google everything else.

  • @Kefford666
    @Kefford666 3 года назад +7

    The worst thing about using a MacBook for me is having to constantly justify why I like using a MacBook 😅
    One thing everyone seems to agree on though is the MacBook good build quality. Any time I’ve tried out other laptops I notice little things like loose hinges, deck flex, screen flex, loud fans, backlight bleed, rough edges. It didn’t bother me before but now I can’t ignore it 😆

  • @CaptainWumbo
    @CaptainWumbo 2 года назад +3

    I've been programming 10 years now and never really use debugger. A lot of coworkers can't live without it but I think it encourages them to write hard to read code and to do too much in each iteration and undervalue fast startup.
    Obviously not an answer to how to make these tools work in MacOS, but just a consideration that you may not need the debugger if you adopt a more iterative style. It's always easy to find a bug if it's in the last line of code you wrote. Takes forever if it's in the last 100 lines, and it shows when I pair with people, debugger and all.

    • @JacobSorber
      @JacobSorber  2 года назад +11

      I definitely agree that incremental development, especially paired with automated testing, makes debugging 100X easier, whether you are using a debugger or not. But, this assumes that I'm the only one writing code. If I'm working with a team, I can't necessarily control how they work. Also, sometimes bugs crop up without writing any lines of code. I might, for example, update a library that my code uses - some behavior changes in that library, and now my code doesn't work anymore. So, I'm hunting through all the code to figure out what broke.

    • @BritishBeachcomber
      @BritishBeachcomber 2 года назад

      That's the difference between coders (who just write stuff to spec) and programmers (who really know the deeper algorithms and understand how to develop complete systems).

  • @D0Samp
    @D0Samp 2 года назад +1

    I was under the assumption that Valgrind is essentially deprecated in favor of the various kinds of sanitizers available in modern compilers, which are available on macOS either way?

  • @mario7501
    @mario7501 2 года назад +1

    I switched to linux for the same reasons, and because it seems to get harder to figure out where libraries are on the system with every iteration of MacOS.

  • @mrcrackerist
    @mrcrackerist 3 года назад +13

    So why not use Linux full time then? :)

    • @pushqrdx
      @pushqrdx 3 года назад +1

      he said the reason at the beginning, honestly in terms of polish macOS shits on windows and linux, but i run linux still because it's that good when it comes to productivity and hackability that i am willing to forego over all polish

    • @mrcrackerist
      @mrcrackerist 3 года назад +1

      @@pushqrdx Zorin and Elementary OS

    • @pushqrdx
      @pushqrdx 3 года назад

      @@mrcrackerist Use a Mac and you'll know why Zorin and eOS are nothing in comparison, it's not just the look, it's a complete ecosystem of very high quality apps combined with a very polish and pretty system, super smooth scrolling and animations, macOS easily stomps both Windows and Linux in that regard, sadly that's where it ends as you're very limited in customization so if you don't like what's out of the box, get lost and so i did and am happily using Linux now

    • @mrcrackerist
      @mrcrackerist 3 года назад +4

      @@pushqrdx To me MacOS feels sluggish and unpolished with worthless animations.
      As for apps I can't think of a single one that I would use in MacOS.

    • @pushqrdx
      @pushqrdx 3 года назад

      @@mrcrackerist if macOS is sluggish and unpolished then literally every other operating system is pure garbage

  • @ahmednagi7074
    @ahmednagi7074 3 года назад +1

    why are you not using normal editor

  • @moodsurfer
    @moodsurfer Месяц назад

    Hi, Jacob, would you recommend Mac as main machine for C++? Or problems with valgrind and GDB are crucial?
    I know that there are workarounds, but what do you think?

  • @mensaswede4028
    @mensaswede4028 4 месяца назад

    I’ve written over a million lines of C code in the last 30 years in all 3 major OS. I’ve never used gdb or any kind of interactive debugger. Most of the code I write is semi-realtime so debugging interactively would completely change the behavior anyways. Instead I prefer plain old file logging and looking at the code. Hasn’t failed me yet. If I’m really in a pinch, valgrind is a good tool and I have used that from time to time.

  • @unclerojelio6320
    @unclerojelio6320 3 года назад +1

    Do you have a video on how to setup a Linux virtual machine on macOS?

  • @ranjithmkumar
    @ranjithmkumar 3 года назад +1

    This is the exact pain I faced after I switched to mac 6 months back. I messed up the keychain access for gdb but still no use. So, I used xcode for debugging on Mac. In a way I like it. But still not a perfect environment. I dont think xcode does all things that valgrind does.

  • @jerome1421
    @jerome1421 7 месяцев назад

    I would be curious to see the code that fails when running normally and doesn't when using lldb.

  • @dripcode2600
    @dripcode2600 5 месяцев назад

    Do you have any video on your kernel hacks?! Please share!

  • @kuijaye
    @kuijaye Год назад

    Using an x86 ubuntu docker image i was able to code x86 nasm on m1 mac, and gdb and valgrind work fine, however i noticed strace does not work

  • @wile9763
    @wile9763 3 года назад +1

    Not to mention that newer versions of macOS don't even ship with /usr/include anymore. You have to run some cryptic command after installing Xcode and Command Line Tools to get them and they disappear when you upgrade.

    • @IgnoreSolutions
      @IgnoreSolutions 3 года назад

      /usr/share exists. /usr/local/include exists. pkg-config also exists and works great. Stop hardcoding your include path strings.

    • @wile9763
      @wile9763 3 года назад +1

      /usr/include is the conventional location major compilers (including Apple Clang which ships with macOS) search for C standard library includes. This prevents the user from ever needing to hard code where these headers are. The user doesn't hard code this include path - it exists as a consistent location of these headers.

    • @IgnoreSolutions
      @IgnoreSolutions 3 года назад

      @@wile9763 You just proved my point. What does it matter if /usr/include is no longer present if the appropriate paths are searched for and libraries populated from other locations anyway?

    • @wile9763
      @wile9763 3 года назад +1

      Because they aren't present by default. That's what I am saying. macOS does not ship with the C standard includes by default.

  • @wlcrutch
    @wlcrutch Год назад +1

    I stans corrected: Macports has a version of valgrind that works in macOS >11. I am in heaven now.

  • @wlcrutch
    @wlcrutch Год назад

    When will valgrind be ported to Macos? seriously, we need this

  • @HamishArb
    @HamishArb 2 года назад

    The most annoying thing to me is the removal of 32 bit support, since so many old things still rely on it. I've enabled it on mine using kernel boot flags, and can now get simple 32 bit apps running, but nothing with a UI works, they all seem to have different crashes and I don't know what to do with it (which apple obviously doesn't care about since they only support 64 bit now).

  • @wlcrutch
    @wlcrutch 9 месяцев назад

    So, I am taking a course where we are programming an Atmega16 in assembly….I currently use UTM to emulate windows but what other microcontrollers have a good dev environment on a mac?

  • @bushidocodes
    @bushidocodes 3 года назад

    Howdy all. Former OS GTA at GWU here. I heartily endorse Multipass for Mac OS users and WSL for Windows users. The SSH and WSL plugins for VSCode integrate really well with these tools, and you can keep your Linux dev environment lean and headless. Most of my former students were using one of these tools with VSCode and VSCode live share for remote pair programming on xv6 during remote learning. Not sure about how M1 support is coming along, but Multipass is from Cannonical and seems to have a good dev path. Docker is of course also an option.

  • @lordadamson
    @lordadamson 3 года назад

    Maybe address sanitizers can help? They sure help me a lot. Although sometimes valgrind really is a must.

  • @rishabhanand4270
    @rishabhanand4270 3 года назад

    I don't do low level stuff, but how do containers / just the docker environment work out for you? VSCode has remote containers and what not to connect to it.

  • @IamTheHolypumpkin
    @IamTheHolypumpkin 3 года назад

    The only time I programm on windows is when the University class requires me to do so. Most of the time this is because the (usually really bad) IDE is only on windows or the Linux/Mac version has something missing which is required. about halve a year ago I had to "code" in VHDL (FPGA Development is really fun) and while the IDE was available on Linux the tutor really recommended the windows version, I don't know why anymore.

  • @BogdanTheGeek
    @BogdanTheGeek 3 года назад

    I have a double whammy of a problem similar to yours, but its the with the M1 mac. Most things are not compiled for it, especially python packages. I have a arm-none-eabi-gdb running just fine on my mac, not sure about the intel one, but it definitely didn't work installing "gdb" through brew.
    Edit, i use arm gdb for embedded systems, not OS programs, so not sure if it works for that.

  • @RoboPhantomX
    @RoboPhantomX 2 года назад

    I had trouble with VS on my Mac, possible tutorial coming soon?

  • @imrank340
    @imrank340 3 года назад

    Since you prefer Linux OS then you could program in to X11 using C? That will allow to demonstrate a new technique.

  • @FelipeMendez
    @FelipeMendez Год назад

    I miss so many tools from Linux like valgrind or kdgraph etc, I tried docker but it’s not a full solution

  • @belesiu
    @belesiu 3 года назад +2

    I’ve had decent experience on WSL (WSL2) on my Win-11 work laptop. I have a Mac and also run Linux on an old laptop and for me, WLS2 works pretty well in its terminal. BTW - love your videos!

  • @brianstorming1
    @brianstorming1 3 года назад

    In socket programming: Try to use accept() on macos, then connect around 200 workers with siege for example to your program, macos will simply not queue them for accpep() to dequeue them with each calls. On linux you can throw as many connection as you want on a socket, it will queue them up.

  • @Spiderboydk
    @Spiderboydk 2 года назад +1

    The worst thing, hands down, is Apples unrelenting refusal to obey any of the standards everybody else is following. Abandoning OpenGL, making Metal instead of supporting Vulkan, forcing Objective-C and its ecosystem, etc.

    • @1873Winchester
      @1873Winchester Год назад

      They suck and I would never give my money to them, just as bad as microsoft

  • @tommy_1446
    @tommy_1446 2 года назад +3

    Or just use Rust and appreciate the magic of the borrow checker. The compile error messages are so helpful it feels the compiler is alive.

  • @sababugs1125
    @sababugs1125 3 года назад

    Which Linux version do you use ?

  • @IgnoreSolutions
    @IgnoreSolutions 3 года назад +2

    I just use lldb on my 15” MBP (Big Sur) for basic debugging. I use a lot of packages from Brew without a problem on macOS, but I definitely agree. Linux is better for programming.
    It’s a shame Valgrind doesnt really work
    As a normie OS, macOS is one of the better ones for programming. Infinitely better than Windows. But when I want to get sh- done, Linux is the one

  • @anve2441
    @anve2441 3 года назад

    line 20 should allocate for sizeof(bool *)

  • @LoesserOf2Evils
    @LoesserOf2Evils 3 года назад

    Doesn’t Apple recommend XCode and its associated tools?

    • @IgnoreSolutions
      @IgnoreSolutions 3 года назад +1

      Of course they will, but Xcode is pretty bad tbh

  • @joachim4660
    @joachim4660 2 года назад +1

    Do you know what you're saying? Apple supporting open and free development tools? Not happening bro.

    • @JacobSorber
      @JacobSorber  2 года назад

      A guy can dream, can't he? 🙂

  • @benjaminshinar9509
    @benjaminshinar9509 3 года назад

    but what was the bug?

  • @thomasipad7719
    @thomasipad7719 3 года назад +2

    Just one thing: What to like at the user interface of a Mac? Window management, Finder and Dock are so ... basic... nearly crippled compared to anything you can get on Windows or Linux! I’m really curious

    • @IgnoreSolutions
      @IgnoreSolutions 3 года назад

      once you add Magnet, it gets quite good
      - Workspace switching is fast and well integrated
      - Global menu bar is nice for laptop screens
      - Ability to use Adobe apps alongside a lot of Unix utilities & programming apps
      - Dont need to install WSL or MinGW to port a Linux application.
      - Works beautifully with 4k/hi dpi screens

    • @thomasipad7719
      @thomasipad7719 3 года назад

      @@IgnoreSolutions Not really, it is horrific. I use Rectangle, which I prefer, but still. So many oversights and problems, really.

    • @wlcrutch
      @wlcrutch Год назад

      no/minimal heat and fan noise.

  • @sukivirus
    @sukivirus 3 года назад +3

    Macs are never focused for programmers from the beginning. It has Unix under the hood and good graphical display which encourages programmers to use it for programming. Even if you see today, they would encourage us to use Swift but then most of the documentation pushes for the development of IOS apps rather than MacOS. Macs also deprecate libraries for example Opengl out of the blue inorder to push their own library which only works with Swift. This is very sad for the programming community.

  • @meisterlumpi7822
    @meisterlumpi7822 3 года назад

    Yeah docker or can’t you just compile them from source? I guess Mac has some sort of C/C++ compiler? 🧐

    • @not_ever
      @not_ever 3 года назад

      That's not how these things work. For example Apple hides some system libraries that valgrind needs for some functionality, so even though there is actually a valgrind version that you can install with homebrew for MacOS it doesn't have full functionality.

  • @RobertFletcherOBE
    @RobertFletcherOBE 3 года назад

    I was in the same situation between windows and linux.. I installed PopOS and now the only real reason I have windows installed is to play games.

  • @MrBeanbones
    @MrBeanbones 3 года назад +2

    You could start a project about programming a robot with ROS as it's a great opportunity for us to learn more about embedded systems and C/C++

  • @Tystros
    @Tystros 2 года назад +1

    But this all seems so complicated compared to simply using Visual Studio on Windows? I don't understand why I would not want to use a fully featured IDE like VS. I never have to use any terminal commands to compile anything or debug anything, it just breaks where an error happens, and the Visual Studio tools like the Debugger and Profiler are awesome.

    • @pxolqopt3597
      @pxolqopt3597 2 года назад

      Its complicated to you because you never used it. In reality it is far simpler once you learn how to use it. Command line tools are usually more powerful than their GUI counterparts, and they give you back far more information. The workflow is more streamlined because instead of having to go through a million GUI elements to find what you want, all you have to do is type. And this typing means that your hands will thank you when you reach your mid life or 3/4 life.

  • @nexovec
    @nexovec 3 года назад +1

    You never play games? :(

  • @atik7
    @atik7 3 года назад

    How about windows with wsl2?

    • @Zephyrus0
      @Zephyrus0 3 года назад +4

      Why not just Linux then?

  • @michaelkotthaus7120
    @michaelkotthaus7120 3 года назад

    It's the first time that I heard the term en.wikipedia.org/wiki/Heisenbug though I already had this kind of bugs.

  • @rcelyte
    @rcelyte 2 года назад

    Reminder to always enable -fsanitize=address for debug builds.

  • @KingJellyfishII
    @KingJellyfishII 3 года назад +7

    I absolutely could not live without gdb and valgrind. Luckily I can tolerate the slightly "rough around the edges" experience of daily driving linux

    • @atidyshirt
      @atidyshirt 3 года назад

      I think valgrind works on Mac, I can't remember if I had any trouble setting it up originally (couple of years back). I switch between Mac on a laptop and Linux on a desktop, pretty much got the same workflow on both, however I don't use gdb

    • @junosoft
      @junosoft 3 года назад

      @@atidyshirt valgrind 'works' but has many bugs on mac. It says hello world has leaks, for example.

    • @atidyshirt
      @atidyshirt 3 года назад

      @@junosoft oh ok, it worked alright for Uni last year, but this year I'm mostly on a Linux machine so not too sure

    • @junosoft
      @junosoft 3 года назад +1

      @@atidyshirt if you can make valgrind work flawless on a recent mac os, please tell me how so

    • @wlcrutch
      @wlcrutch Год назад

      @@atidyshirt Does not. At least not anymore

  • @Kenbomp
    @Kenbomp 11 месяцев назад

    Gdb is not the best debugger but it's a cool hacker tool

  • @arphenti2502
    @arphenti2502 3 года назад +2

    Nothing is better than programming with resistors

    • @sudarshanv9797
      @sudarshanv9797 3 года назад

      I think it's registers

    • @arphenti2502
      @arphenti2502 3 года назад

      @@sudarshanv9797 no

    • @TheVertical92
      @TheVertical92 3 года назад

      @@arphenti2502 do you mean transistors?

    • @sudarshanv9797
      @sudarshanv9797 3 года назад

      @@arphenti2502 who programs with resistors? They are analog devices

    • @jorionedwards
      @jorionedwards 3 года назад +3

      Real programmers use butterflies. Everyone knows that.

  • @SuperHeroINTJ
    @SuperHeroINTJ 3 года назад

    I had a MBP went Linux. And I am happy with NixOS!

  • @wiskasIO
    @wiskasIO 7 месяцев назад

    The problem is not the Mac is GDB itself, it sucks.

  • @atkevindsouza
    @atkevindsouza 2 года назад

    subscribed, heisenbug caught me off-guard.

  • @JJSogaard
    @JJSogaard 2 года назад

    I love macOS but this is annoying. GDB and Valgrind need to get on the Mac...

  • @vkoskiv
    @vkoskiv 3 года назад

    I only do memory leak tracking with valgrind on my linux box. For random segfaults and crashes, the address sanitizer and undefined behaviour sanitizer give brilliant and helpful info without valgrind.

  • @MaximYudayev
    @MaximYudayev 3 года назад +1

    “... is that it’s not Linux”

  • @jagadeeshkatla6932
    @jagadeeshkatla6932 3 года назад

    I am using in wsl on windows. 🙂

  • @donoteatmikezila
    @donoteatmikezila 3 года назад

    As soon as I saw the title I said "the worst thing is that valgrind stopped working", and the video didn't disappoint.

  • @BritishBeachcomber
    @BritishBeachcomber 2 года назад

    The Mac problem is simple. It runs Unix, which is aimed at servers and corporates. Leading edge developers need Linux for its support base and innovation.

  • @romangeneral23
    @romangeneral23 2 года назад +1

    The worse thing about programming on a MAC ?
    Answer: You are on a MAC

  • @Sahilbc-wj8qk
    @Sahilbc-wj8qk 3 года назад +1

    I only use Linux as main driver.
    Running directly it to hardware is what i prefer.

  • @tomoghnosen
    @tomoghnosen 3 года назад +1

    Linux for Life

  • @evolagenda
    @evolagenda 3 года назад

    Package the tools in a container

  • @jerrygao1495
    @jerrygao1495 3 года назад

    docker for MAC

  • @MECHANISMUS
    @MECHANISMUS 3 года назад

    How good Mac is too expensive for me!

  • @mohamedamine-vx6mb
    @mohamedamine-vx6mb 3 года назад

    You are the best
    Keep goings-on in your work , and God blessed you 🙏

  • @andr3318
    @andr3318 2 года назад +1

    Solution: dont buy a mac. Buy a normal pc bc there you are free. You can have windows or linux there.

  • @NSResponder
    @NSResponder 2 месяца назад

    So, you're not using the tools that apple provides at no cost, and you're complaining that GDB doesn't work well? You know GDB is open source, right? Why don't you fix it?

    • @JacobSorber
      @JacobSorber  2 месяца назад

      I think somebody needs a hug.

    • @NSResponder
      @NSResponder 2 месяца назад

      @@JacobSorber Does that pass for a clever rejoinder in your social milieu?

  • @casperes0912
    @casperes0912 3 года назад +1

    It doesn't have Valgrind. That's my answer. - I'd way the f**k rather code on a Mac than a Windows system for sure. Linux, I could do. But I primarily write code *for* Apple platforms, so, yeah

    • @casperes0912
      @casperes0912 3 года назад

      ^ This comment written before watching the video

  • @bokunochannel84207
    @bokunochannel84207 3 года назад +3

    hah, apple will force developer to use clang.

  • @JohnHollowell
    @JohnHollowell 3 года назад

    Yeah, windows sucks. WSL helps in that you can ignore windows and just target POSIX compliant OSs (Linux, *BSD, MacOS).

  • @EnsignRho
    @EnsignRho 3 года назад

    Why don't you write a virtual CPU and port GCC and GDB to it so you can run the same test environment on every machine? It would also be a great teaching tool and debugging tool for millions of users. Write your CPU as a RISC-V.

  • @torarinvik4920
    @torarinvik4920 3 года назад +1

    "as soon as Apple fixes these issues" The issue is price. That is why almost all public places use computers with Windows. Look around at your local pharmacy, bank, hospital ect. You will not find Mac's there. And certainly not in India or other third world contries.

  • @wlcrutch
    @wlcrutch Год назад

    Never switch to Windows. Sorry, not Sorry!

  • @THEescapebanana
    @THEescapebanana Год назад

    dev containers

  • @MrSkinkarde
    @MrSkinkarde 2 года назад

    Only noobs need debuggers

  • @wlcrutch
    @wlcrutch Год назад

    Lol all the mac haters. 😂 Just like the hipsters who *must* have a mac. My only complaint is valgrind not working. Other than that, the hardware quality faaaar outweighs any minor annoyances of macos. I mean, if you’re going to do linux, then do Arch or something that really makes you have the linux ‘experience’ otherwise you are just using a worse posix environment. Haters gonna hate 😂😂

  • @2005kpboy
    @2005kpboy 2 года назад

    Linux all the way..
    Ubuntuuuu...

  • @vitacell1
    @vitacell1 3 года назад +2

    1:15 *GNU/Linux

  • @NSResponder
    @NSResponder 2 месяца назад

    Not Apple's fault that you choose to stick to your stone knives and bearskins.

  • @torarinvik4920
    @torarinvik4920 3 года назад

    Windows is more advanced than Mac but less user-friendly, Linux is more advanced than Windows but less user-friendly than Windows. And yes, I have used all 3 of them. I grew up with Mac in the 90s and used Windows at friends houses at the time at the same time. I have installed and used a few Linux distros at several times in my life. Linux is extremely flexible, fast and stable but also very cumbersome and very little software runs on it. Do you want a lightning fast, very advanced and super safe car that can run on limited amount of roads? I rather use a mediocre OS that actually runs almost all consumer software. Mac is like a Ferrari, looks beautiful but you pay way, way to much for what you get. Buy the BMW's top model and you get the same if not higher quality car for much less money.

    • @1873Winchester
      @1873Winchester Год назад

      And it's not like you get underdog cred anymore for using mac.

    • @torarinvik4920
      @torarinvik4920 Год назад

      @@1873Winchester Very true. I hate sitting in the shell for every task that is more advanced than double clicking an icon. Why can't they make a program that is a "system browser" an application where you do all of the most common tasks that you would do in the terminal". We are living in 2022 we shouldn't have to use terminals like that anymore. Terminal should only be for specific tasks that are impractical to do in GUI.

  • @m4l490n
    @m4l490n 3 года назад

    I see ranting about Apple, I automatically like, share, and subscribe. Although, I was already subscribed.
    Also, good for not using windows, never use windows, real developers don't use windows.
    Just embrace Linux Jacob!! Change all your computers and your family computers, and your students computers to Linux. Just tell your students, "if you aren't using Linux natively, not that VM or dual boot nonsense, you will automatically fail this class".

  • @JacobSorber
    @JacobSorber  3 года назад +21

    Thanks Nicholas! It seems that there's a version of valgrind that works. Haven't had a chance to try it out yet, but the repo is here if you are interested (github.com/LouisBrunner/valgrind-macos )

    • @brianngetich007
      @brianngetich007 3 года назад +1

      Need space before closing ) since as of now it's a dead link.

    • @neillunavat
      @neillunavat 3 года назад +1

      @@brianngetich007 nice observation dude,