Cheesed Up
Cheesed Up
  • 27
  • 285 337
Golang’s Exiciting Future! | 1.24 | json/v2 | Unions | Opaque Protobuf API
The future of the Go programming language is very exciting! Let's look at some changes in the near future, as well as some things that might never happen - like union types!
Sources:
- Upsun's blog post: devcenter.upsun.com/posts/go-124/
- Victoria Metrics post: victoriametrics.com/blog/go-weak-pointer/
- Generic aype aliases: tip.golang.org/ref/spec#Alias_declarations
- Unions proposal: github.com/golang/go/issues/70752
- encoding/json/v2 discussion: github.com/golang/go/discussions/63397
- encoding/json/v2 experimental impl.: github.com/go-json-experiment/json
- Protobuf Editions overview: protobuf.dev/editions/overview/
- Protobuf Go's Opaque API: go.dev/blog/protobuf-opaque
มุมมอง: 3 861

วีดีโอ

Shove Those Microservices up Your #*$!! | Complex != Complicated
มุมมอง 2.7K2 หลายเดือนก่อน
I love microservices! But as many other architectural patterns, it can quickly be abused! Let's talk about that...
Hash Table in 134 Lines of Java
มุมมอง 2762 หลายเดือนก่อน
Learn how does a hash table work under the hood! More projects like this: github.com/kndndrj/inloc Sources: - www.shawndsilva.com/blog/computer science fundamentals/hash-table-explained-and-implemented-in-java-part-1 - www.turing.com/kb/implementing-hashmap-in-java
Is Python Fast Now??! | Python 3.13 Released
มุมมอง 8K3 หลายเดือนก่อน
IMPORTANT: mistake at 3:27 (see pinned comment) Let's take a look at performance improvements of the new Python 3.13 release! Let's also check two interesting implementations of Python: Codon and LPython. Sources: - 3.13 release notes: docs.python.org/3/whatsnew/3.13.html#a-better-interactive-interpreter - Guy with benchmarks: en.lewoniewski.info/2024/python-3-12-vs-python-3-13-performance-test...
Mojo the BLOAT!!! | A Glimpse of Mojo
มุมมอง 11K3 หลายเดือนก่อน
Mojo is the new, still unfinished programming language from Modular, which aims to be a full Python superset with the performance of C. Alongside that, Mojo has a lot of really nice features. Let's take a look at it together! Modular website: modular.com
C++ Is Getting a BORROW CHECKER ??! | Safe C++ Proposal
มุมมอง 13K3 หลายเดือนก่อน
The C community has published a "Safe C " Proposal, which would bring in a number of safety features from Rust. The proposal's website: safecpp.org
Base64 Encoder & Decoder in 37 Lines of Python | The BASED Encoding??!
มุมมอง 9844 หลายเดือนก่อน
In this video, let's learn how base64 encoding works, and let's implement our own encoder and decoder using Python! Original example: github.com/leon73/Python-Base64 My version: github.com/kndndrj/inloc/tree/master/base64
Save Money With Free and Open Source Software! | FOSS
มุมมอง 2814 หลายเดือนก่อน
Let's imagine a simple example of how changing the programs you use to open source alternatives not only improves your experience in the long run, but can also save you money! Disclaimer: Not a financial advice!
Linux Shell in 57 Lines of Rust | bubble-shell
มุมมอง 6K4 หลายเดือนก่อน
How does a shell work? What does it do? Let's walk through the code of a tiny implementation of a unix shell which fits in under 60 lines of Rust! source: github.com/JoshMcguigan/bubble-shell
Linux Containers in 41 Lines of Go
มุมมอง 8K5 หลายเดือนก่อน
Do you know which basic concepts Docker or LXC use? Let's use this tiny Go example to learn how! sources: - video: th-cam.com/video/Utf-A4rODH8/w-d-xo.html - article: www.infoq.com/articles/build-a-container-golang/
Microcontr... WHAT? | What I Wish I Knew When Starting Out With Microcontrollers
มุมมอง 4.5K5 หลายเดือนก่อน
I want to share a few essentials about microcontrollers. What are they? How to pick an appropriate one for your project? What kind of software can be used to program a microcontroller? And more.
Blockchain in 72 Lines of Python | justblockchain
มุมมอง 1.1K5 หลายเดือนก่อน
In this video, we are taking a look at a small example of a blockchain implementation in Python. The chain also implements proof of work. original source: github.com/koshikraj/justblockchain
Real-Time Operating System in 96 Lines of C | RIOS
มุมมอง 90K5 หลายเดือนก่อน
Let's take a look at the most basic form of an RTOS - a project called RIOS, which in it's most basic form fits under 50 lines of C. RIOS Source: www.cs.ucr.edu/~vahid/rios/
Game of Life in 54 Lines of Python | Conway's Game of Life
มุมมอง 1.6K6 หลายเดือนก่อน
In this video, let's quickly look at how a simple stupid implementation of Conway's famous Game of Life looks like in Python. Code based on example from here: www.geeksforgeeks.org/program-for-conways-game-of-life/
System Tray Icon in 176 Lines of C | libayatana-appindicator
มุมมอง 9376 หลายเดือนก่อน
In this video, let's look at how to create a simple GTK program which includes an app indicator icon in the system tray. Code from: github.com/AyatanaIndicators/libayatana-appindicator
Improve Your Sway Experience With Scripts | My SwayWM Scripts
มุมมอง 1.2K6 หลายเดือนก่อน
Improve Your Sway Experience With Scripts | My SwayWM Scripts
Compiler in 191 Lines of C | tinyc
มุมมอง 24K6 หลายเดือนก่อน
Compiler in 191 Lines of C | tinyc
New Iterators in Go 1.23
มุมมอง 6306 หลายเดือนก่อน
New Iterators in Go 1.23
Write a Custom Neovim Dbee Layout Using Lua!
มุมมอง 4638 หลายเดือนก่อน
Write a Custom Neovim Dbee Layout Using Lua!
Manage Docker Compose Projects with ease!!
มุมมอง 1418 หลายเดือนก่อน
Manage Docker Compose Projects with ease!!
nvim-dbee: Interactive Database Client Within Neovim
มุมมอง 8K8 หลายเดือนก่อน
nvim-dbee: Interactive Database Client Within Neovim
Computer Mouse from SCRATCH With RUST Firmware!
มุมมอง 1.6K9 หลายเดือนก่อน
Computer Mouse from SCRATCH With RUST Firmware!
You Wouldn't CUT Through a KEYBOARD, Would You?
มุมมอง 1459 หลายเดือนก่อน
You Wouldn't CUT Through a KEYBOARD, Would You?
Install Fusion 360 on Arch LINUX!!!
มุมมอง 9K3 ปีที่แล้ว
Install Fusion 360 on Arch LINUX!!!
Add a Simple LOADING BAR To Your Shell Scripts!
มุมมอง 86K3 ปีที่แล้ว
Add a Simple LOADING BAR To Your Shell Scripts!

ความคิดเห็น

  • @IQof2
    @IQof2 10 ชั่วโมงที่ผ่านมา

    Thank you FPSRussia

  • @FroggyTheGamer
    @FroggyTheGamer 4 วันที่ผ่านมา

    How do i run the query? do i need to create a keymap or am i missing something?

    • @FroggyTheGamer
      @FroggyTheGamer 4 วันที่ผ่านมา

      nvm i got my keymap setup!

    • @FroggyTheGamer
      @FroggyTheGamer 4 วันที่ผ่านมา

      if anyone else needs this, heres my keymap: vim.keymap.set("v", "r", '"vy:lua require("dbee").execute(vim.fn.getreg("v"))<CR>', { desc = "Run SQL" }) this will copy the selected text into register v and use dbee api to execute the query.

  • @donaldwright2426
    @donaldwright2426 7 วันที่ผ่านมา

    Thanks for the explanations. I'm writing a tiny RTOS for the MEGA 2560 (that's because it's what I have) and what is propose by RIOS is close to what I'm looking but lack of small features. PORTB = 0xff is to enable all 8 ports of port B as outputs. 🙂

  • @zifebort2308
    @zifebort2308 11 วันที่ผ่านมา

    I WAS searching for this, and thought there's no tutorial for it on youtube and can't find a clear instruction either.. so i figured it myself. But now that I already know what to do, I finally found this video...

  • @jacobzimmerman3492
    @jacobzimmerman3492 11 วันที่ผ่านมา

    btw did you notice gopls finally has type inference for generics

  • @equu497
    @equu497 12 วันที่ผ่านมา

    Great video! Hey I'm wondering if you've halted development on dbee.nvim or if it's something that you'll jump back into at some point? Love the plugin and your videos, keep doing what you do!

  • @SadeghMirzaee-fd8lg
    @SadeghMirzaee-fd8lg 13 วันที่ผ่านมา

    Having Data Analysis, Data Science, AI in Python as the number of language, and then the Speed HAVE TO be a MUST for python these days.

  • @thisisryker
    @thisisryker 16 วันที่ผ่านมา

    So it’s basically swift with a new compiler ?

  • @Nick-yd3rc
    @Nick-yd3rc 18 วันที่ผ่านมา

    I wish json were more performant, it’s not hard to improve substantially. There’s a workaround for every deficiency in stdlib through a third-party package. But having stdlib on par with them out of the box in a consistent way would be really welcome.

  • @comfortcove
    @comfortcove 18 วันที่ผ่านมา

    Great video, subbed

  • @yannick5099
    @yannick5099 18 วันที่ผ่านมา

    The error handling in Go is fine I think. Some syntactic sugar may be nice, but not needed and makes the language slightly more complicated. Unions are still useful for many other cases though. What I would really like is to get away from runtime reflection and make compile time reflection the norm. Performance is really an important topic in more and more projects. Go generate is basically that but inside the tooling instead of the language itself. The tool directive shows they want to keep going into that direction. Fine for me. The rework of the JSON API is interesting. More performance and better behavior is great. Protobuf changes look good too, even though I haven't used it yet.

  • @fn3xus
    @fn3xus 18 วันที่ผ่านมา

    Glorious evolution!

  • @Anonymususerbameg
    @Anonymususerbameg 18 วันที่ผ่านมา

    watch?v=s7WNFzm3vjo

  • @ringthane69
    @ringthane69 19 วันที่ผ่านมา

    Subbed... thank you! (get better, kids!)

  • @esra_erimez
    @esra_erimez 19 วันที่ผ่านมา

    Subbed

  • @esra_erimez
    @esra_erimez 19 วันที่ผ่านมา

    As a recovering C++ developer, I *love* Go's error handling. I do not think it is broken and therefore needs no fixing.

    • @cheesed_up
      @cheesed_up 19 วันที่ผ่านมา

      Word!

    • @biskitpagla
      @biskitpagla 11 วันที่ผ่านมา

      same here man

    • @marcoceriani1069
      @marcoceriani1069 10 วันที่ผ่านมา

      catch (const std::exception& ex) { // log the error } catch (const lib1::exception& ex) { // log the error } catch (const otherlib::error e) { // log the error } catch (...) { std::cerr << "unknown error, good luck have fun" << std::endl; }

  • @bruhhh3-vz8dt
    @bruhhh3-vz8dt 19 วันที่ผ่านมา

    This started with Python 3.11

  • @vk8a8
    @vk8a8 28 วันที่ผ่านมา

    we need a new c++ . from scratch

  • @diniomar3965
    @diniomar3965 หลายเดือนก่อน

    Hey nice plugin. In the example you showed, it uses docker to enter the database username and password. How do i enter username and password for a remote database not based on Docker?

  • @itzaleeexbw
    @itzaleeexbw หลายเดือนก่อน

    very underrated

  • @gordonshumway888
    @gordonshumway888 หลายเดือนก่อน

    Typical C/C++ development th-cam.com/video/szcQjan875A/w-d-xo.html

  • @RuanLabuschagne-i5v
    @RuanLabuschagne-i5v หลายเดือนก่อน

    Im probably being dumb, but what button do you press to execute the query? learning nvim and i just can't get the query to execute

  • @05xpeter
    @05xpeter หลายเดือนก่อน

    I have seen many developers think that the infrastructure diagram is THE architecture diagram and do infrastructure driven development. I try to teach developers that having one runtime gives us enormous flexibility in the future, since we can run it locally, serverless, in docker containers without any changes. At my last project we had a monolith with one run time deployed as 5 different services with different autoscaling. All interservice calls could be performed in direct call mode, in http mode or in event mode, so our automated testing could be run as a monolith and we did full BDD testing, where most of our tests was end-2-end like.

  • @technichron
    @technichron หลายเดือนก่อน

    MLIR is more about lowering a language in refined steps, and doing more optimizations and analysis on the high level representations. With LLVM, it's analysis passes had to try to identify high level language constructs and optimize them /through/ the low level IR, whereas MLIR offers a framework to do these optimizations and analysis on high level constructs directly

  • @_jelle
    @_jelle หลายเดือนก่อน

    Not implementing concurrecy from the start might become problematic, since adding concurrecy to an existing codebase can be a real nightmare

    • @cheesed_up
      @cheesed_up หลายเดือนก่อน

      I generally agree, but on the other hand, they probably know more about that than I do :)

  • @klmcwhirter
    @klmcwhirter หลายเดือนก่อน

    I did a similar experiment as you did when 3.13 was released. I used the concurrent.futures.Executor abstraction so I could easily switch between ProcessPoolExecutor and ThreadPoolExecutor via command line switches. I used a brute force search for Perfect Numbers up to some value of N (also passed on the command line). I found the results somewhat predictable, but with one surprise. With the standard python binary, the single-thread / single-process (naive) implementation was over 15x slower than multi-process (10 workers). The multi-thread (also 10 workers) was, no surprise, at par with the naive implementation. This clearly shows the effect of the GIL. The results with the 3.13t experimental NoGIL binary was about the same for the multi-process impl. The naive impl was slower(~20% slower than the standard python binary). But the real surprise was that the multi-threaded impl was actually slightly slower than the multi-process impl with either binary! Of course, this shows that there is more context switching overhead with threads in a single-process vs multiple kernel-managed processes. And, of course, there is probably some noise in my results due to the architecture of the laptop on which I ran the tests, but the results should be comparable. I concluded that it is best to just stick with the multi-process parallelism approach for now. At least until further experimentation with NoGIL leads to some further Python improvements. I have the experiment posted in a github repo. Let me know if there is any interest in my posting the link. Thanks for the great video! I really appreciate seeing someone else sharing roughly the same results that I experienced.

  • @idocoding2003
    @idocoding2003 2 หลายเดือนก่อน

    We have mojo for speed

  • @Cinarbayramic
    @Cinarbayramic 2 หลายเดือนก่อน

    c++ is in fact the BestLanguageOfAllTime because its c++

  • @muslimgamerrr9479
    @muslimgamerrr9479 2 หลายเดือนก่อน

    is this going to be a experimental feature or in the future will it be default?

    • @igorthelight
      @igorthelight หลายเดือนก่อน

      We can't say for sure. But it's development will not stop - that's for sure!

  • @randall.chamberlain
    @randall.chamberlain 2 หลายเดือนก่อน

    We don't have to agree in the details, and I take that is your point. In the end, use your head is the only guide we shall stick to. Good video. I agree completely with this after almost 30 years in the software industry. There's no free lunch.

  • @seventymx
    @seventymx 2 หลายเดือนก่อน

    Splitting services into specific, smaller "microwave," "fryer," and "stove" microservices makes each one simpler and faster to understand. Onboarding is easier, and if needed, reimplementing just the "microwave" service is far less painful than tackling a monolith-service. Plus, with clear gRPC proto definitions, you get built-in documentation, so you don’t need deep dives into inner workings-unlike larger services that grow in complexity and need detailed UML diagrams or process charts to explain.

    • @cheesed_up
      @cheesed_up 2 หลายเดือนก่อน

      I get your point, but what I meant to say is that splitting too much plays against you, instead of for you. Also, a proto file in this context is not necessairly better than a simple interface. But tbh, at the end context matters the most.

  • @YuraSuper2048
    @YuraSuper2048 2 หลายเดือนก่อน

    sorry i don't know what is a micro service all my backends are one 300000 line repo

  • @chudchadanstud
    @chudchadanstud 2 หลายเดือนก่อน

    CDD will get you fired because you can't implement features fast enough. Yes Micro services are terrible but CDD is not he solution

    • @cheesed_up
      @cheesed_up 2 หลายเดือนก่อน

      Not sure if I agree completely. I get what you mean, but I'm a bit annoyed with "fast enough" being said at all workplaces all the time. In my experience "we need this yesterday" makes the whole development and maintanance process a lot slower and it usually pays off to do (at least a bit of) extra upfront work. But yeah, CDD in its purest form (what I presented in the video) also doesn't make sense - I exagerated a bit :D. Do you agree?

    • @gabrielfreitas4270
      @gabrielfreitas4270 2 หลายเดือนก่อน

      CDD isn't quite the thing for you, because you need to DELIVER BLAZINGLY FAST? You might want to take a look o eXtreme Go Horse

  • @software-sux
    @software-sux 2 หลายเดือนก่อน

    true

  • @bibbrain1418
    @bibbrain1418 2 หลายเดือนก่อน

    Awesome video. The use of microservices is an optimization, and almost always a premature one at that. Start from a monolith, then split off microservices as you discover a need.

    • @seventymx
      @seventymx 2 หลายเดือนก่อน

      You know exactly that if something is implemented as a quick-and-dirty workaround, it rarely gets refactored later. If it works, it ships-leaving some poor developer stuck with dependency hell. When everything is packed into one huge service, updates become a nightmare, with shared dependencies that only work if you update everything at once. Splitting services isn’t about making them tiny; it’s about keeping each small enough that a new hire could handle re-writing it solo. That’s the sweet spot, especially in a small to medium-sized company! 😉

  • @marouaniAymen
    @marouaniAymen 2 หลายเดือนก่อน

    I worked a lot with Microservice like projects in the context of real life enterprise applications, in my opinion, you are right on a lot of points, and what I agree with you is that Microservice Architecture is not the Go To Solution for any project, yes sure it depends. I witnessed a project where adopting microservices make it an Endless Spaghetti Nightmare and I saw another legacy project a Gegalith that the build takes 2h+ with constant application outage and very poor performance ( a business report generated in 20m+ if it didn't fail). In the end, change is constant we have to know how to deal with it in an elegant Agile way and Software Architecture is an Art, the patterns are there for lessons.

  • @PhthaloJohnson
    @PhthaloJohnson 2 หลายเดือนก่อน

    So it's a proposal where C++ gets another language embedded into it. You of course have to opt in to use it and it's probably going to be a billion new keywords and syntax. Sounds familiar doesn't it. The problem with C++ is the fact that it's too overbloated. If you need the safety features, you really don't have an option but use Rust.

  • @ollicron7397
    @ollicron7397 2 หลายเดือนก่อน

    Thats why Nim is the best language.

    • @cheesed_up
      @cheesed_up 2 หลายเดือนก่อน

      I have to look at Nim at some point!

    • @vncstudio
      @vncstudio 2 หลายเดือนก่อน

      @@cheesed_up Nim is excellent and very fast with excellent C and Python integration. The compiler architecture is being advanced after the recent release of version 2.2.0

    • @GuiseppeZanotta
      @GuiseppeZanotta 2 หลายเดือนก่อน

      Its really not though. Thats like saying OpenBSD is the best OS, yeah for like the 8 people using it 7 of which are its maintainers. NIM is utterly worthless and useless in the grand scheme of things. It's all about positioning and driving industry adoption.

  • @Cinarbayramic
    @Cinarbayramic 2 หลายเดือนก่อน

    real sigmas leak memory

  • @matijabecirevic8214
    @matijabecirevic8214 2 หลายเดือนก่อน

    The state after removing apple should contain 3 keys (grapes, banana, orange), not 2 as visible in the video, so it is in fact not correct

    • @cheesed_up
      @cheesed_up 2 หลายเดือนก่อน

      It does contain 3 keys (the state is correct). It just READS 2 values with the ".get" method. The presentation is a bit confusing, sorry about that!

  • @deezydoezeet
    @deezydoezeet 2 หลายเดือนก่อน

    Yup this was really fun. I recently just learned about Hash tables too so this was really nice to see. Thanks boss!

  • @felipej.oribeiro6700
    @felipej.oribeiro6700 2 หลายเดือนก่อน

    Great plugin. Thank you o/

  • @Garfield_Minecraft
    @Garfield_Minecraft 2 หลายเดือนก่อน

    it feels kinda the same as python. it's just not much different for what I'm doing

  • @familyshare3724
    @familyshare3724 2 หลายเดือนก่อน

    Zig error handling would be great

  • @gast128
    @gast128 2 หลายเดือนก่อน

    With modern C++ practices one hardly encounter memory safety issues. When you use it in a C like way you run into above issues.

  • @xxXXuser69420XXxx
    @xxXXuser69420XXxx 2 หลายเดือนก่อน

    "Rust Lobby" sent me lmao the meds mason what do they say?

  • @DaMu24
    @DaMu24 2 หลายเดือนก่อน

    outdated

    • @cheesed_up
      @cheesed_up 2 หลายเดือนก่อน

      You are probably right!

  • @umcanalsemvidanoyoutube8840
    @umcanalsemvidanoyoutube8840 2 หลายเดือนก่อน

    Lua/LuaJIT >>>>>>>

  • @surajmandal_567
    @surajmandal_567 2 หลายเดือนก่อน

    Waiting for Mojo to get some more mature.

    • @le0t0rr3z
      @le0t0rr3z 2 หลายเดือนก่อน

      Mojo and more importantly it's tooling is already quite mature imo. It definitely lacks some functionality but it's already at a good state to get to learn and get used to it

  • @morglod
    @morglod 2 หลายเดือนก่อน

    llvm - architecture mess, thx for vendors its living swift - is barely working transpiler to C++ mojo - ?? hmmm worlds slowest statically typed language? 1:25 mlir is focused on parallelisation

    • @GuiseppeZanotta
      @GuiseppeZanotta 2 หลายเดือนก่อน

      but then it's like what have you personally done that has brought hundreds of billions of dollars worth of shareholder value to the world? ....... nothing! ......oh ok! keep talking! I personally just shut the fuck up and write code! My opinion is unless you wrote something better you have no room to complain. Nothing is stopping you from creating a better solution.