Vjekoslav Krajačić Profile Banner
Vjekoslav Krajačić Profile
Vjekoslav Krajačić

@vkrajacic

Followers
3,599
Following
85
Media
63
Statuses
502

Building next-gen file explorer #DiskVoyager . C programming/tools/systems. Croat 🇭🇷, catholic, husband, father of 4. Discord:

Croatia
Joined October 2016
Don't wanna be here? Send us removal request.
Explore trending content on Musk Viewer
Pinned Tweet
@vkrajacic
Vjekoslav Krajačić
8 months
Disk Voyager will be released in alpha on December 12, 2023! Subscribe: Demo: The 5-minute demo video is from the Handmade Cities conference that took place last week, and Voyager received overwhelmingly positive comments!
14
49
309
@vkrajacic
Vjekoslav Krajačić
3 months
Frame-perfect hover with smooth scrolling. Moving the mouse and scrolling at the same time. Switching the filter on top of that. Using a handmade IMGUI built specifically for this file explorer.
30
61
1K
@vkrajacic
Vjekoslav Krajačić
10 months
Reasons I use C: - It's a small and simple language. - It's stable and changes infrequently. - It provides low-level, manual memory management. - I can see actual CPU instructions. - It has a decades-old development ecosystem. - It works everywhere. - It allows for direct
37
69
826
@vkrajacic
Vjekoslav Krajačić
10 months
Utilizing C motivated me to create my own tech stack while developing Disk Voyager, a modern & fast file explorer. By writting everything from scratch I get to: - Hand tailor everything to my project needs. - Be in control of all code. - Avoid unnecesary bloat. (700kb single
@vkrajacic
Vjekoslav Krajačić
10 months
Reasons I use C: - It's a small and simple language. - It's stable and changes infrequently. - It provides low-level, manual memory management. - I can see actual CPU instructions. - It has a decades-old development ecosystem. - It works everywhere. - It allows for direct
37
69
826
34
70
777
@vkrajacic
Vjekoslav Krajačić
8 months
Finally, I can view my old game screenshots in real time! Yes I played WoW and Guild Wars. Don't judge, I was kid. 😜
35
30
550
@vkrajacic
Vjekoslav Krajačić
3 months
Finally, I've added a quick access sidebar to Disk Voyager.
18
17
439
@vkrajacic
Vjekoslav Krajačić
8 months
Advice for new C programmers: Avoid null-terminated strings; they're outdated, inefficient and impractical. Create your own type with basic functions. It's not that hard, and it goes a long way. One of the benefits of this approach, among others, is slicing without copying.
Tweet media one
45
26
417
@vkrajacic
Vjekoslav Krajačić
8 months
Telling programmers to value money over innovation and skill is precisely why this industry is falling apart. Instead of engineers, we get semi-coders bragging about setups, arguing over languages/frameworks, and boasting about code cleanliness.
@wtravishubbard
Travis Hubbard
8 months
The best programming language to learn? The one you get paid to use put all nonsense aside
156
149
1K
17
34
335
@vkrajacic
Vjekoslav Krajačić
3 months
A lot of people asked about IMGUI. There were mentions of by @cmuratori . Casey was definitely the person who introduced me to the immediate mode concept applied to UIs, but I actually first learned about it from following his Handmade Hero series. With
@vkrajacic
Vjekoslav Krajačić
3 months
Frame-perfect hover with smooth scrolling. Moving the mouse and scrolling at the same time. Switching the filter on top of that. Using a handmade IMGUI built specifically for this file explorer.
30
61
1K
9
19
326
@vkrajacic
Vjekoslav Krajačić
4 months
Disk Voyager project in C still takes under 2 seconds for a full recompile in debug mode on my few-years-old laptop (with a Ryzen 7 4700U). Such short compile times have had profound effects on my development. Faster iteration cycles, the freedom to experiment and the joy of
Tweet media one
21
22
320
@vkrajacic
Vjekoslav Krajačić
4 months
Finally got my hands on this book. I think I'm going to rewrite my file manager in Rust now, adhering to clean principles.
Tweet media one
16
8
309
@vkrajacic
Vjekoslav Krajačić
7 months
Last update of the year with improved UI and DPI scaling. Overwhelmingly positive feedback from the closed alpha! Excited for the open alpha in January! Grateful for all the support from people during this year, full of challenges and surprises. 2024 is the year of Disk Voyager!
8
15
297
@vkrajacic
Vjekoslav Krajačić
6 months
C macro approach to using optional / default / named function params, using struct designated initializers. Mandatory values are passed first as standard function params (rect in the example). Especially useful when a zero value can be made a valid value.
Tweet media one
9
18
246
@vkrajacic
Vjekoslav Krajačić
3 months
@ascendentdescen Yes, that's me calling into the Windows shell to acquire context menu items. :/
3
2
226
@vkrajacic
Vjekoslav Krajačić
9 months
Did someone mention thumbnails? 🎞️🗄️🗃️
9
17
220
@vkrajacic
Vjekoslav Krajačić
5 months
- New content zoom slider, displayed on demand. - Jump to specific zoom levels, such as details or columns. - Display zoom percentage in the footer.
7
9
215
@vkrajacic
Vjekoslav Krajačić
3 months
Understanding how lower-level pieces work should be important to every programmer! What I found out after some time at my job is that you can often make smaller, simpler, and faster code tailored to your project's needs than the libraries you used. Libraries will almost always
@Hasen_Judi
Hasen Judi
3 months
You either concieve of programming as data processing, or you concieve of it as the stitching together of black boxes (libraries and services). Programming education should teach you how to make behavior emerge via data processing. BUT, as you begin learn to program, you can't
Tweet media one
29
67
435
8
21
204
@vkrajacic
Vjekoslav Krajačić
3 months
In Voyager, you can assign hotkeys to almost all actions, accessible globally via the cmd palette. Commands can be pinned to the "Quick Cmds" section, activated by the middle-click. You can modify hotkeys in other areas like popups and context menus. Voyager's hotkey features
8
8
198
@vkrajacic
Vjekoslav Krajačić
6 months
Separating folders from files, toggling their visibility, combined with filtering. P.S. Alpha has begun, but it is still in a closed stage, being tested with a selected group. Working hard to move towards public release.💪
9
4
191
@vkrajacic
Vjekoslav Krajačić
1 year
Custom UI framework, written from scratch in C, for Disk Voyager, file explorer I'm working on!
Tweet media one
7
20
191
@vkrajacic
Vjekoslav Krajačić
8 months
It's extremely disheartening to see software developers taking this stance, using hardware advances as an excuse for being lazy programmers.
@jimkxa
Jim Keller
8 months
Computers are fast so software doesn’t have to be
189
120
1K
13
9
187
@vkrajacic
Vjekoslav Krajačić
4 months
Disk Voyager contains no AI logic, focusing instead on executing user commands and developers' intentions, avoiding the trend of unnecessary AI integration for mere hype.
6
7
189
@vkrajacic
Vjekoslav Krajačić
5 months
This article has stirred up dust for some reason. You know, you can have memory bugs in managed languages, right? - Better programs come from better programmers, not just better tools. - Reducing their responsibility doesn't lead to better programmers. -
Tweet media one
12
24
183
@vkrajacic
Vjekoslav Krajačić
2 months
I wholeheartedly disagree with the main take of this article: The author uses the same vague language as Uncle Bob when trying to define what "clean" means. Why can't we just aim for simple and fast? Even in the small school example that Casey used, the
24
8
179
@vkrajacic
Vjekoslav Krajačić
5 months
Praise for the effort and research, especially if it is done in one's free time. But I fail to see how this is an improvement over C. In fact, I would argue that this goes against the spirit of C. I understand that many programmers are obsessed with memory safety, but direct
@filpizlo
Filip Jerzy Pizło
5 months
In my spare time, I made a memory-safe C that I call Fil-C.
21
73
291
14
10
179
@vkrajacic
Vjekoslav Krajačić
8 months
I plan to test this theory using File Explorer as an example.🙂
@tsoding
Тsфdiиg
8 months
"Users don't care about performance" They do. They just rarely have a choice. Give them to choose between a slow and a fast app and you will be blown away by the results. The problem is that all apps these days are a slow, buggy crap. It's you who don't care. Not them.
97
354
3K
6
0
157
@vkrajacic
Vjekoslav Krajačić
13 days
"Don't reinvent the wheel," they say. There are no round wheels in the software industry. It's not even a century old. There are only wheels that people or companies don't have the knowledge and resources to improve upon.
9
14
156
@vkrajacic
Vjekoslav Krajačić
3 months
True. Memory arenas convey this perfectly. They are simple, easy to implement, memory efficient, and solve many "problems" that "modern" languages attempt to address with "smart" features. In fact, most of these problems stem from poor architecture.
@tsoding
Тsфdiиg
3 months
A lot of memory management models assume that there are many objects and many lifetimes (a lifetime per each object). The reality is that there are many object and very few lifetimes (usually like 3-5). So a lot of languages are solving pretty much non-existing problems.
39
54
853
4
12
153
@vkrajacic
Vjekoslav Krajačić
8 months
I've been asked several times how many lines of code (LOC) Voyager has. Not that I think it's an important metric, but it's actually not that many. Here's the current count. I'm slowly approaching the complexity of the Windows Calculator. 😂
Tweet media one
5
12
154
@vkrajacic
Vjekoslav Krajačić
8 months
Fuzzy find is a must-have default for modern tools. In #DiskVoyager , it's integrated into virtually everything, including file listing, the navigation pane, context menus, GoTo, commands, and options.
2
8
151
@vkrajacic
Vjekoslav Krajačić
4 months
System wide Drag & Drop - Use standard modifiers to make actions copy, move, or create shortcuts. - Use the right mouse button to open a context menu with options. - Drag to other panels, subfolders, tabs, the recycle bin, header path, desktop, or apps.
6
5
147
@vkrajacic
Vjekoslav Krajačić
8 months
Rectangular selection with smooth mouse scrolling on an expanded Windows drive (approx. 1 million files).
5
4
138
@vkrajacic
Vjekoslav Krajačić
8 months
Support for layouts, AKA workspaces. #DiskVoyager already auto saves and restores the layout between sessions. However, you can also save your layout under a new name and load it on demand, giving you the ability to optimize for different workflows.
0
2
115
@vkrajacic
Vjekoslav Krajačić
5 months
Not just old, but nostalgic for the times when Windows actually worked™️.
@tomwarren
Tom Warren
5 months
if you remember this, you’re old
Tweet media one
781
623
9K
4
6
113
@vkrajacic
Vjekoslav Krajačić
6 months
Game changer! RIP visual studio.
@ryanjfleury
Ryan Fleury
6 months
Left: From-scratch debug build, launching target, and stepping with RADDBG. Right: Launching target & stepping with Visual Studio 2022.
41
143
1K
3
2
111
@vkrajacic
Vjekoslav Krajačić
2 months
Software is slow.
@wiseconnector
W 𝗜 𝗦 𝗘 𝗖 𝗢 𝗡 𝗡 𝗘 𝗖 𝗧 𝗢 𝗥 ™ 💬
2 months
THREE words
Tweet media one
31K
1K
16K
10
5
114
@vkrajacic
Vjekoslav Krajačić
8 months
Alpha is only a week away! I've brought my blankets to the office and am sleeping on the couch. Let's go!💪 P.S. I've surpassed 1,000 subscribers, which is way beyond my expectations! ♥️
4
3
109
@vkrajacic
Vjekoslav Krajačić
5 months
If you're feeling nostalgic and in need of some retro look, we've got you covered!
Tweet media one
5
4
102
@vkrajacic
Vjekoslav Krajačić
2 months
Who said that light themes don't look good?
Tweet media one
16
0
102
@vkrajacic
Vjekoslav Krajačić
8 months
@tsoding We don't ask questions like this! When I was born, my mom told me that you can't start an identifier with a digit, and so I never did! :P
2
0
102
@vkrajacic
Vjekoslav Krajačić
3 months
This conversation between Casey Muratori and Uncle Bob (link in the original post) is insightful. I learned a lot from it initially and have shared it with many. However, most find it too lengthy. It would be beneficial to have short, concise highlights available.
@Hasen_Judi
Hasen Judi
3 months
I used to think virtual functions (interfaces) were quite suitable for building "open" systems that can be extended by others without you knowing ahead of time what features they will have. I was wrong. Very few people actually know how to do that. If you want to get straight
Tweet media one
Tweet media two
Tweet media three
42
68
543
6
4
98
@vkrajacic
Vjekoslav Krajačić
9 months
Hundreds of thousands of new file entries arrive, and your scroll position remains fixed on your selection while still responding seamlessly to your scroll input. All movements in the video result from mouse scrolling and keyboard arrow actions. So many apps don't handle this
2
4
96
@vkrajacic
Vjekoslav Krajačić
8 months
@vkrajacic
Vjekoslav Krajačić
8 months
@tsoding Expressing the UI with code, rather than with data (as most modern libraries do with layout/markup files), will always be more powerful. If you ever devise a UI format so flexible, you would still end up in the same place, writing code.
3
2
65
1
5
91
@vkrajacic
Vjekoslav Krajačić
6 months
Good advice. I really wish programmers were less dogmatic about abstractions. I treat them very carefully these days. Giving every piece of functionality its own structure, function, class, module, etc. can spiral so quickly that, in no time, you're stuck in a codebase where
@transmutrix
transmutrix (wishlist Wizwag)
6 months
An anecdote about this: When I was in college, a friend from class told me he was interested in making his own game. Over a few months, he went through some SDL tutorials, and wrote a lot of C++ code. He asked me one day if I could help him figure out a bug in a sprite animaton
44
249
1K
5
1
90
@vkrajacic
Vjekoslav Krajačić
8 months
System light/dark in #DiskVoyager .
2
6
89
@vkrajacic
Vjekoslav Krajačić
10 months
I enjoy programming! I am one of those who wake up every day, kiss their wife, hug their children, and go to work with a smile to conquer the next challenge.💪 I love my job! Life is good!
Tweet media one
6
2
71
@vkrajacic
Vjekoslav Krajačić
8 months
The entire Disk Voyager project compiles in roughly ONE second in the debug build. And around five seconds in the release build. Such short compile times have had profound effects on my development. Faster iteration cycles, the freedom to experiment and the joy of programming.
1
1
71
@vkrajacic
Vjekoslav Krajačić
9 months
This is so misleading. Optimization is often necesary but it's not the key. It's writing the code sensibly from the beginning. Something that fewer and fewer programmers practice nowadays starting their projects with billions of dependencies.
@CodeWisdom
Programming Wisdom
6 years
"Rules of Optimization: Rule 1: Don't do it. Rule 2 (for experts only): Don't do it yet. ” - Michael A. Jackson
34
333
1K
4
4
68
@vkrajacic
Vjekoslav Krajačić
5 months
I need a panel, panel, a panel is what I need. (Hey, hey)
4
3
71
@vkrajacic
Vjekoslav Krajačić
8 months
Switch between folders and files. Select everything, toggle folders on and off, and you'll have all your files selected. Use two split panels, one for files and one for folders.
1
1
70
@vkrajacic
Vjekoslav Krajačić
8 months
@tsoding Expressing the UI with code, rather than with data (as most modern libraries do with layout/markup files), will always be more powerful. If you ever devise a UI format so flexible, you would still end up in the same place, writing code.
3
2
65
@vkrajacic
Vjekoslav Krajačić
9 months
The conference starts in less than two days! Are you ready for the Disk Voyager demo? Here is something to set the mood.
Tweet media one
4
3
66
@vkrajacic
Vjekoslav Krajačić
8 months
REACT™: Real-time Example of Altered Casing Text. Developed using advanced AI technology; patents have already been filed to prevent theft.
2
2
65
@vkrajacic
Vjekoslav Krajačić
5 months
We all know it's important to save on letters to create short and memorable names!
Tweet media one
5
4
64
@vkrajacic
Vjekoslav Krajačić
7 months
Excellent video on how to handle strings in a modern C codebase. API-wise, it's almost the same as how I do it for Disk Voyager. It also highlights how nicely strings compose on top of memory arenas.
@ryanjfleury
Ryan Fleury
7 months
Outlining and walking through the Hidden Grove base layer's from-scratch string APIs, which have helped me write much simpler, more flexible, more dynamic, and more robust string processing code in C.
0
3
72
1
2
62
@vkrajacic
Vjekoslav Krajačić
6 months
OOPs, I abstracted again, Implemented methods, in my OOP game, Oh baby, baby, OOPs, you think it's so sleek, That my code's at its peak, I'm not that optimized. OOPs, I've thrown an exception, Caught errors in action, in my code's section, Oh baby, baby, OOPs, you think it's all
1
10
61
@vkrajacic
Vjekoslav Krajačić
5 months
As usual, it's a great article from Ryan on multithreading. The most important lesson about MT that I learned years ago, was to allow threads to work with their own memory and then join the results. It's so simple that it should be plainly obvious. Sadly, for many, it isn't.
@ryanjfleury
Ryan Fleury
5 months
On mutation, how it subtly occurs in single-threaded code, and how it can disrupt the process of upgrading single-threaded code to being multi-threaded.
2
18
140
2
2
59
@vkrajacic
Vjekoslav Krajačić
8 months
@_rygo6 I'll try to write a blog post about it when I get the time. But in short, yes, it's all IMGUI, with an OpenGL renderer as a backend (though it could be any other GPU API for that matter). Regarding performance, if you don't do anything fancy, it's actually quite easy to optimize
1
3
58
@vkrajacic
Vjekoslav Krajačić
4 months
@supahvee1234 Yes, you can, but the culture of C++ programming often doesn't quite encourage you to do so, due to the use of: - Templates, even for very simple things - Complex class hierarchies and extensive use of abstractions in general - Numerous small functions and files, leading to a
3
0
55
@vkrajacic
Vjekoslav Krajačić
4 months
@cmuratori You mean at most once, right? I don't want to break the singletons.
3
0
55
@vkrajacic
Vjekoslav Krajačić
10 months
@bloeys It's custom built. Inspired and motivated by UI series written by @ryanjfleury
1
3
54
@vkrajacic
Vjekoslav Krajačić
11 months
@cmuratori So many possibilities to discover! Maybe someday they could introduce a feature that allows you to dock the taskbar to different edges of the monitor!
3
0
47
@vkrajacic
Vjekoslav Krajačić
10 months
😂
@SanderSkjegstad
Sander
10 months
Tweet media one
0
0
10
0
2
47
@vkrajacic
Vjekoslav Krajačić
10 months
@RokCej C++ is not small and simple. It has tons of inconsistent features. And it definitely changes at way higher frequency, pretty much absorbing all features other languages introduced over time. Also, C introduced useful features not present in C++.
3
0
46
@vkrajacic
Vjekoslav Krajačić
9 months
I could give this video to my six-year-old son to watch, and he'd understand it. It’s amazing how well and intuitively Casey explains these concepts, with which even some full-time software developers struggle.
@cmuratori
Casey Muratori
9 months
Latency, throughput, and dependency chains can seem like foreign concepts that only exist in optimization literature. To make them more intuitive, here is a demonstration of how all three come into play in the real world when you do a load of laundry:
7
47
322
2
1
44
@vkrajacic
Vjekoslav Krajačić
11 months
The extent of fanboyism among Rust programmers never fails to astonish me. They often make strong assertions without accompanying sources or references.
@Omar_Hiari
Omar.unwrap();
11 months
Embedded systems today are being built using Rust. Why Rust? - Faster than C - Memory safe - Affordable development Rust opens the door to new, interesting, and powerful applications of embedded technology.
15
2
73
3
3
39
@vkrajacic
Vjekoslav Krajačić
8 months
Windows is lagging behind a bit, but we're being patient.
1
2
37
@vkrajacic
Vjekoslav Krajačić
8 months
@ZPostFacto It's not sarcasm. If you're working within an existing ecosystem or codebase that heavily relies on regular C strings, this approach may not be very beneficial for you. But for every new project I write in C (not C++), I always prefer length-based strings, as they are superior in
2
0
37
@vkrajacic
Vjekoslav Krajačić
11 months
I don't know what's exactly happening with TypeScript and/or Rust these days. I see lots of people posting about so called "dramas". Fortunately, I remain unaffected by these discussions. I will just continue working in C, thank you very much.
3
3
37
@vkrajacic
Vjekoslav Krajačić
8 months
@pikuma Sad but true. We, as an industry, should really take a step back and rethink how we write software.
1
2
37
@vkrajacic
Vjekoslav Krajačić
10 months
@cgonfire No, it's not raylib, altought I've heard great stuff about it. It's hand written from scratch, greatly inspired by this UI series ->
1
2
34
@vkrajacic
Vjekoslav Krajačić
10 months
@ryanjfleury Don't worry. When they do, they'll likely overengineer it, as they usually do. Instead of offsetting a single value, they will make a function call that creates a new storage object with a constructor/destructor pair. This object will be managed by a smart pointer and will be
2
1
34
@vkrajacic
Vjekoslav Krajačić
1 year
One UI animation trick I employed in #DiskVoyager : clamping the distance for items traveling long distances. This reduces the noise while maintaining direction. It's easier on the eye but users still perceive it similarly. Animation feedback can truly enhance large layout shifts.
1
2
32
@vkrajacic
Vjekoslav Krajačić
10 months
Memory arenas, as explained in the video utilizing the "sparse memory" scheme, serve as the fundamental building blocks for managing memory in Disk Voyager. This technique is exceptionally effective. If you have not yet subscribed to , you are missing out
@cmuratori
Casey Muratori
10 months
For programmers who are unfamiliar with the address translation hardware available in modern CPUs, I put up an overview of three surprisingly powerful things you can get it to do:
8
56
422
1
1
32
@vkrajacic
Vjekoslav Krajačić
10 months
@ThePrimeagen Stop with C++ -- Use C.😁
4
0
31
@vkrajacic
Vjekoslav Krajačić
10 months
Multiple selections + Clipboard ==🤝 If you have ever wanted to copy/edit file names outside of the file explorer and apply those changes, well, now you can. #DiskVoyager
1
2
31
@vkrajacic
Vjekoslav Krajačić
10 months
@UTonmoy No I haven't tried it. I dislike the premise where we prioritize programmer comfort and ignorance over user experience.
5
0
31
@vkrajacic
Vjekoslav Krajačić
8 months
@nikitonsky @AncapProud It's easy (and almost encouraged) to write C++ code that looks good but performs poorly. However, the file explorer is probably getting slower for other reasons, such as the accumulation of legacy code that no one at the company understands anymore.
2
0
29
@vkrajacic
Vjekoslav Krajačić
10 months
Sort by size in #DiskVoyager includes directories contents, which is super handy! SSDs are blazingly fast!
1
1
27
@vkrajacic
Vjekoslav Krajačić
6 months
@molecularmusing By not caring about it, or by having a lack of competent people to do the job. File Explorer gets worse with each new Windows version.
1
0
28
@vkrajacic
Vjekoslav Krajačić
11 months
Multiple cursors are such a natural fit for a batch rename in #DiskVoyager . Being able to view changes in real time makes all the difference compared to a classical find/replace forms. Supports: movement/deletion by letter/word, change case, undo/redo, copy/paste, ids/dates etc.
2
1
27
@vkrajacic
Vjekoslav Krajačić
10 months
@iammemeloper We should all move to C++, where syntax makes your intentions very clear.
Tweet media one
2
2
25
@vkrajacic
Vjekoslav Krajačić
10 months
@ThePrimeagen How do I grow mustache like yours? I'm already using vim. What else am I missing?
1
0
26
@vkrajacic
Vjekoslav Krajačić
5 months
@tsoding What's wrong with the current wheels we have?
Tweet media one
0
1
26
@vkrajacic
Vjekoslav Krajačić
8 months
@ZPostFacto No, I don't even link CRT. Shouldn't the question be, what are the advantages of storing the null terminator at this point? Isn't that just an artifact of the past? I understand that it was initially used to save space. If we take interop with existing systems out of the
1
0
23
@vkrajacic
Vjekoslav Krajačić
9 months
This year, the Handmade Cities Seattle conference will feature a demonstration of #DiskVoyager !
Tweet media one
2
1
25
@vkrajacic
Vjekoslav Krajačić
1 year
Showing customization options in #DiskVoyager , file explorer I'm working on!
Tweet media one
0
6
23
@vkrajacic
Vjekoslav Krajačić
8 months
@RoseSilicon I don't see that I mentioned anywhere about constructors, exceptions, RAII, and tons of other complexities involved in dealing with strings (and other objects) that C++ promotes.
2
0
24
@vkrajacic
Vjekoslav Krajačić
5 months
@ruben_we @simplex_fx The main takeaway point I wanted to express was that most languages attempt to improve the old memory management scheme instead of trying to come up with something better and more suited to modern hardware. If you're manually managing thousands or millions of allocations, of
0
2
24
@vkrajacic
Vjekoslav Krajačić
4 months
This is actually a pretty good comparison.
@ryanjfleury
Ryan Fleury
4 months
Improving performance of code which was never architected with performance constraints in mind makes about as much sense as writing an entire single player game, then “adding multiplayer”, without ever considering multiplayer architecture. That is, none at all.
7
16
180
1
0
21
@vkrajacic
Vjekoslav Krajačić
10 months
@takeiteqzy Ports to mac and linux are planned afterwards.
2
0
22
@vkrajacic
Vjekoslav Krajačić
8 days
@cmuratori @sumdeveloper @unclebobmartin @ZedZark @MRobot64 @vesanieminen @Yupasama81 @TheSameCat2 @BallisticBooger You mean I should listen to programmers with a respectable project history for programming advices?
2
0
22
@vkrajacic
Vjekoslav Krajačić
8 months
@tsoding This startup is working on file explorer. This is not far from my original sketches :P
Tweet media one
0
0
21
@vkrajacic
Vjekoslav Krajačić
10 months
@lemire I wish more people would adopt "single header lib" format that Sean popularized with Patching that is as simple as putting file in your source dir and #include it in your code. I don't see getting any simpler than that?
1
0
19
@vkrajacic
Vjekoslav Krajačić
1 year
Removed CRT lib because it was effectively not used. Exe size dropped by ~250Kb. Why bother? When exe is 1Mb, thats 1/4 of its size. Now its only halfway to 1.44Mb, floppy disk size :)
Tweet media one
0
0
19
@vkrajacic
Vjekoslav Krajačić
8 months
@basit_ayantunde W.r.t allocations, in my codebase, strings are always part of a larger allocation scheme (e.g., a memory arena) and they never "free themselves." The parent system is always responsible for that.
0
0
19
@vkrajacic
Vjekoslav Krajačić
10 months
@zet23t Thanks! Unfortunately, I don't see this as a good open source candidate. I might open source my base layer (sort of like my stdlib) which is not specific to Disk Voyager. I'll probably publish some devlog articles in the future, explaining interesting stuff I encountered while
2
0
18
@vkrajacic
Vjekoslav Krajačić
10 months
@tha_rami Working on modern and fast file explorer, hopefully realesed this year on Windows! Everything written from scratch in C. Modern, fast, simple, personalized & portable.
Tweet media one
0
1
18
@vkrajacic
Vjekoslav Krajačić
10 months
Your friend got a job offer and that's why he quit!
@KevinNaughtonJr
Kevin Naughton Jr.
10 months
my friend learned C as his first programming language during his computer science degree. he quit after the first semester i learned Python as my first programming language during my computer science degree and i finished the major feel free to draw your own conclusions
549
275
3K
0
0
17