I have a lot of parts lying about that I want to use for Bitcoin mining. What are your builds for MAXIMUM Btc Mining? I want to step up my usage of the GTX 1080Ti with the motherboard having 5 PCIe slots, but I'm limited with the best possible power supply. submitted by
I want it bullet-proof, money is not an object. submitted by
Not professional movie editing but mostly for vlogs and YouTube. Also I may be editing 4k video so I need it to do that. Also interested in mining bitcoin but I'm thinking a performance video machine is good enough. Need the best pc for the money. Don't need mouse, monitor or keyboard. Only the tower. $1500 or less. submitted by
I decided to write a comment about «Why Osana takes so long?»
somewhere and what can be done to shorten this time. It turned into a long essay. Here's TL;DR
The cost of never paying down this technical debt is clear; eventually the cost to deliver functionality will become so slow that it is easy for a well-designed competitive software product to overtake the badly-designed software in terms of features. In my experience, badly designed software can also lead to a more stressed engineering workforce, in turn leading higher staff churn (which in turn affects costs and productivity when delivering features). Additionally, due to the complexity in a given codebase, the ability to accurately estimate work will also disappear. Longer version
Junade Ali, Mastering PHP Design Patterns (2016)
: I am not sure if people here wanted an explanation from a real developer who works with C and with relatively large projects, but I am going to do it nonetheless. I am not much interested in Yandere Simulator nor in this genre in general, but this particular development has a lot to learn from for any fellow programmers and software engineers to ensure that they'll never end up in Alex's situation, especially considering that he is definitely not the first one to got himself knee-deep in the development hell (do you remember Star Citizen
?) and he is definitely not the last one.
On the one hand, people see that Alex works incredibly slowly, equivalent of, like, one hour per day, comparing it with, say, Papers, Please
, the game that was developed in nine months from start to finish by one guy. On the other hand, Alex himself most likely thinks that he works until complete exhaustion each day. In fact, I highly suspect that both those sentences are correct! Because of the mistakes made during early development stages, which are highly unlikely to be fixed due to the pressure put on the developer right now and
due to his overall approach to coding, cost to add any relatively large feature (e.g. Osana) can be pretty much comparable to the cost of creating a fan game from start to finish. Trust me, I've seen his leaked source code
(don't tell anybody about that)
and I know what I am talking about. The largest problem in Yandere Simulator right now is its super slow development. So, without further ado, let's talk about how «implementing the low hanging fruit» crippled the development and, more importantly, what would have been an ideal course of action from my point of view to get out. I'll try to explain things in the easiest terms possible.
- else if's and lack any sort of refactoring in general
The most «memey» one. I won't talk about the performance though (switch statement is not better in terms of performance, it is a myth. If compiler detects some code that can be turned into a jump table, for example, it will do it, no matter if it is a chain of if's or a switch statement. Compilers nowadays are way smarter than one might think). Just take a look here
I refactored this code for you
using C language (mixed with C++ since there's no this pointer in pure C). Take a note that else if's are still there, else if's are not the problem by itself.
The refactored code is just objectively better for one simple reason: it is shorter, while not being obscure, and now it should be able to handle, say, Trespassing and Blood case without any input from the developer due to the usage of flags
. Basically, the shorter your code, the more you can see on screen without spreading your attention too much. As a rule of thumb, the less lines there are, the easier it is for you to work with the code. Just don't overkill that, unless you are going to participate in International Obfuscated C Code Contest
. Let me reiterate:
Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.
Antoine de Saint-Exupéry
This is why refactoring — activity of rewriting your old code so it does the same thing, but does it quicker, in a more generic way, in less lines or simpler — is so powerful. In my experience, you can only keep one module/class/whatever in your brain if it does not exceed ~1000 lines, maybe ~1500. Splitting 17000-line-long class into smaller classes probably won't improve performance at all, but it will make working with parts of this class way easier. Is it too late now to start refactoring?
Of course NO
: better late than never.
If you think that you wrote this code, so you'll always easily remember it, I have some bad news for you: you won't. In my experience, one week and that's it. That's why comments are so crucial. It is not necessary to put a ton of comments everywhere, but just a general idea will help you out in the future. Even if you think that It Just Works™
and you'll never ever need to fix it. Time spent to write and debug one line of code almost always exceeds time to write one comment in large-scale projects. Moreover, the best code is the code that is self-evident. In the example above, what the hell does (float) 6 mean? Why not wrap it around into the constant with a good, self-descriptive name? Again, it won't affect performance, since C# compiler is smart enough to silently remove this constant from the real code and place its value into the method invocation directly. Such constants are here for you.
I rewrote my code above a little bit to illustrate this
. With those comments, you don't have to remember your code at all, since its functionality is outlined in two tiny lines of comments above it. Moreover, even a person with zero knowledge in programming will figure out the purpose of this code. It took me less than half a minute to write those comments, but it'll probably save me quite a lot of time of figuring out «what was I thinking back then» one day. Is it too late now to start adding comments?
Again, of course NO
. Don't be lazy and redirect all your typing from «debunk» page (which pretty much does the opposite of debunking, but who am I to judge you here?) into some useful comments.
- Unit testing
This is often neglected, but consider the following. You wrote some code, you ran your game, you saw a new bug. Was it introduced right now? Is it a problem in your older code which has shown up just because you have never actually used it until now? Where should you search for it? You have no idea, and you have one painful debugging session ahead. Just imagine how easier it would be if you've had some routines which automatically execute after each build and check that environment is still sane and nothing broke on a fundamental level. This is called unit testing, and yes, unit tests won't be able to catch all your bugs, but even getting 20% of bugs identified at the earlier stage is a huge boon to development speed. Is it too late now to start adding unit tests?
at the same time. Unit testing works best if it covers the majority of project's code. On the other side, a journey of a thousand miles begins with a single step. If you decide to start refactoring your code, writing a unit test before refactoring will help you to prove to yourself that you have not broken anything without the need of running the game at all.
- Static code analysis
This is basically pretty self-explanatory. You set this thing once, you forget about it. Static code analyzer is another «free estate» to speed up the development process by finding tiny little errors, mostly silly typos (do you think that you are good enough in finding them? Well, good luck catching x << 4; in place of x <<= 4; buried deep in C code by eye!). Again, this is not a silver bullet, it is another tool which will help you out with debugging a little bit along with the debugger, unit tests and other things. You need every little bit of help here. Is it too late now to hook up static code analyzer?
- Code architecture
Say, you want to build Osana, but then you decided to implement some feature, e.g. Snap Mode. By doing this you have maybe made your game a little bit better, but what you have just essentially done is complicated your life, because now you should also write Osana code for Snap Mode. The way game architecture is done right now, easter eggs code is deeply interleaved with game logic, which leads to code «spaghettifying», which in turn slows down the addition of new features, because one has to consider how this feature would work alongside each and every old feature and easter egg. Even if it is just gazing over one line per easter egg, it adds up to the mess, slowly but surely.
A lot of people mention that developer should have been doing it in object-oritented way. However, there is no silver bullet in programming. It does not matter that much if you are doing it object-oriented way or usual procedural way; you can theoretically write, say, AI routines on functional (e.g. LISP
)) or even logical language if you are brave enough (e.g. Prolog
). You can even invent your own tiny programming language
! The only thing that matters is code quality and avoiding the so-called shotgun surgery
situation, which plagues Yandere Simulator from top to bottom right now. Is there a way of adding a new feature without interfering with your older code (e.g. by creating a child class which will encapsulate all the things you need, for example)? Go for it, this feature is basically «free» for you. Otherwise you'd better think twice before doing this, because you are going into the «technical debt» territory, borrowing your time from the future by saying «I'll maybe optimize it later» and «a thousand more lines probably won't slow me down in the future that much, right?». Technical debt will incur interest on its own that you'll have to pay. Basically, the entire situation around Osana right now is just a huge tale about how just «interest» incurred by technical debt can control the entire project, like the tail wiggling the dog.
I won't elaborate here further, since it'll take me an even larger post to fully describe what's wrong about Yandere Simulator's code architecture. Is it too late to rebuild code architecture?
, although it should be possible to split Student class into descendants by using hooks for individual students. However, code architecture can be improved by a vast margin if you start removing easter eggs and features like Snap Mode that currently bloat Yandere Simulator. I know it is going to be painful, but it is the only way to improve code quality here and now. This will simplify the code, and this will make it easier for you to add the «real» features, like Osana or whatever you'd like to accomplish. If you'll ever want them back, you can track them down in Git history and re-implement them one by one, hopefully without performing the shotgun surgery this time.
- Loading times
Again, I won't be talking about the performance, since you can debug your game on 20 FPS as well as on 60 FPS, but this is a very different story. Yandere Simulator is huge. Once you fixed a bug, you want to test it, right? And your workflow right now probably looks like this:
- Fix the code (unavoidable time loss)
- Rebuild the project (can take a loooong time)
- Load your game (can take a loooong time)
- Test it (unavoidable time loss, unless another bug has popped up via unit testing, code analyzer etc.)
And you can fix it. For instance, I know that Yandere Simulator makes all the students' photos during loading. Why should that be done there? Why not either move it to project building stage by adding build hook so Unity does that for you during full project rebuild, or, even better, why not disable it completely or replace with «PLACEHOLDER» text for debug builds? Each second spent watching the loading screen will be rightfully interpreted as «son is not coding» by the community. Is it too late to reduce loading times?
Or any other continuous integration tool. «Rebuild a project» can take a long time too, and what can we do about that? Let me give you an idea. Buy a new PC. Get a 32-core Threadripper, 32 GB of fastest RAM you can afford and a cool motherboard which would support all of that (of course, Ryzen/i5/Celeron/i386/Raspberry Pi is fine too, but the faster, the better). The rest is not necessary, e.g. a barely functional second hand video card burned out by bitcoin mining is fine. You set up another PC in your room. You connect it to your network. You set up ramdisk
to speed things up even more. You properly set up Jenkins
) on this PC. From now on, Jenkins cares about the rest: tracking your Git repository, (re)building process, large and time-consuming unit tests, invoking static code analyzer, profiling, generating reports and whatever else you can and want to hook up. More importantly, you can fix another bug while Jenkins is rebuilding the project for the previous one et cetera.
In general, continuous integration is a great technology to quickly track down errors that were introduced in previous versions, attempting to avoid those kinds of bug hunting sessions
. I am highly unsure if continuous integration is needed for 10000-20000 source lines long projects, but things can be different as soon as we step into the 100k+ territory, and Yandere Simulator by now has approximately 150k+ source lines of code. I think that probably
continuous integration might be well worth it for Yandere Simulator. Is it too late to add continuous integration? NO
, albeit it is going to take some time and skills to set up.
- Stop caring about the criticism
Stop comparing Alex to Scott Cawton. IMO Alex is very similar to the person known as SgtMarkIV, the developer of Brutal Doom, who is also a notorious edgelord who, for example, also once told somebody to kill himself, just like… However, being a horrible person, SgtMarkIV does his job. He simply does not care much about public opinion. That's the difference.
- Go outside
Enough said. Your brain works slower if you only think about games and if you can't provide it with enough oxygen supply. I know that this one is probably the hardest to implement, but…
That's all, folks.
Bonus: Do you think how short this list would have been if someone just simply listened to Mike Zaimont instead of breaking down in tears
What will you be doing with this PC? Be as specific as possible, and include specific games or programs you will be using.
My wife and I play VR games with our HTC Vive pretty often and my Gigabyte Aero 15 laptop has been struggling. Although boy does it do a pretty good job for a laptop. I'd love to have a Beat Saber experience with 0 hiccups and be able to run the Witcher 3 on Ultra without any stuttering. I've also got my eye on Squadrons in VR too.
Additionally I'm a video editor by trade and while work provides me with equipment for that, I would love Adobe Creative Cloud to run well on whatever I end up with.
What is your maximum budget before rebates/shipping/taxes?
Let's go with 1,200 USD but I can be convinced to invest a little more if it makes a huge difference. Let's call it a comfy starting point. Mostly I'm just looking for the most bang for my buck, not the latest and greatest. If we come up with a $1,000 solution, all the better!
When do you plan on building/buying the PC? Note: beyond a week or two from today means any build you receive will be out of date when you want to buy.
For the purposes of moving forward let's say this week. There's really no rush so I can be convinced to wait if sales or new launches (that make current stuff cheaper) are imminent. I'm open to your suggestions.
What, exactly, do you need included in the budget? (ToweOS/monitokeyboard/mouse/etc)
I have a keyboard, wireless mouse, battery backup, and a cheap Acer monitor from 2016. But beyond that I own 0 parts of the pc itself and have no extra copies of Windows lying around. You can include a monitor recommendation if there's a spectacular deal/opportunity right now or leave it off.
Which country (and state/province) will you be purchasing the parts in? If you're in US, do you have access to a Microcenter location?
Southern California, United States. There's apparently a Micro Center an hour south of me, so if it saves on shipping or tax to make that trek and pick all the parts up there, that is an option although a LITTLE inconvenient.
If reusing any parts (including monitor(s)/keyboard/mouse/etc), what parts will you be reusing? Brands and models are appreciated.
Not necessarily using but own: 2016 Acer monitor (nothing special, has HDMI) Anker wireless mouse, generic noisy keyboard from work.
Will you be overclocking? If yes, are you interested in overclocking right away, or down the line? CPU and/or GPU?
I'm too inexperienced to know if this is necessary for my needs or not. I want my games to look gorgeous and smooth. I want my setup to be as quiet as possible. I guess in a perfect world I would want the setup to be as simple as possible so maybe "no" to overclocking? You tell me.
Are there any specific features or items you want/need in the build? (ex: SSD, large amount of storage or a RAID setup, CUDA or OpenCL support, etc)
My priorities are good graphics, smooth painless experience, in a quiet unobtrusive machine. I'm not coding, bitcoin mining, storing teraflops of data or hacking the pentagon. I'll set up a simple backup solution on an external harddrive for minimal person files.
Do you have any specific case preferences (Size like ITX/microATX/mid-towefull-tower, styles, colors, window or not, LED lighting, etc), or a particular color theme preference for the components?
I do NOT need flashy. I don't care about LEDs or little screens in the case. I don't need an elaborate watercooled system (unless you tell me that's the only way to have a relatively quiet PC experience). I guess I would choose smaller and more low profile for a case unless that makes things hotter (read: noisier). I'm a minimalism guy if that helps. Function over form. A window is fine but not important. If color makes no difference, white would match the room better than black. But again, low on my priority list.
Do you need a copy of Windows included in the budget? If you do need one included, do you have a preference?
I guess I do. I'm used to Windows 10 at this point but I do NOT want any extraneous software installed. No bubblewitch or bloatware if at all avoidable. I'm open to suggestions for antivirus solutions
I know just enough about PCs to get myself in trouble sometimes. I can comb through forums to troubleshoot problems, I can install new drivers and but struggle with knowing how to optimize my pc experience. (ie. Why is my laptop so loud right now? Why are these system apps using 100% of my CPU? WHy does this game run amazing one day and terribly the next?)
I can follow directions pretty well and I know that's really all pc building is. Expensive, sharp, electrified LEGO. I used to do basic repairs on apple computers back in the day so I'm no stranger to static free workspaces and keeping track of tiny screws.
But even with all that, feel free to treat me like an idiot and walk me through this new world slowly. I'm here to learn and ask questions. Thank you in advance for your help, kind internet person!
Hello there! I've been building PC's for quite some time but always did it on my own and seldom lurk reddit etc. Therefore I apologize for having no idea if there are specific terms for the following. submitted by
I've decided to upgrade my i7 4790 and my gtx970. My current plan is to buy the x570 Asus strix motherboard, rtx 3080, zen3 CPU, and the Samsung 970x evo. However Nvidia only recently teased their GPU and I have no idea when the CPU is going to be released. My main concern is that what if it turns out that the Mobo, the GPU, or even the SSD is DOA, I wouldn't have a clue until I boot it up. Zen3 is scheduled to come out in 2020 but no news on whether it's at Q3 or Q4.
I apologize if these questions seem rather ridiculous to you all. Again, I have been building PC's for a long time, but I have never waited on components to be released like this.
My questions would be
1) Should I buy a super cheap am4 CPU so that I can test out my gear? If so, what is the cheapest am4 CPU?
2) How long does it usually take for water blocks to come out following the release of a GPU?
3) How does preordering of GPUs work? Do random websites just have it available for preorder starting month x day x hour x? Is there usually enough stock for a few days or does a large number of consumers/ scalpers buy out the Founders edition of GPU? I understand that between the 970 and 3080 GPUs became high demand due to Bitcoin mining so I'm wondering just how in demand the next big GPU is usually.
Thank you so very much for your time!
Steuern und Bitcoin - Tipps und Tricks Bitcoin und Steuern 2020: Worauf Sie beim Finanzamt achten müssen PC Gamer is supported by its audience. When you buy through links on our site, we may earn an affiliate commission. Learn more. Home; Features; How to build an efficient cryptocurrency mining PC ... Durch Bitcoins Mining können Sie Einheiten der virtuellen Bitcoin-Währung erhalten. Mit entsprechendem finanziellen Aufwand kann so jeder Computer-Besitzer nebenbei Geld verdienen. Wie das geht und was Sie dabei beachten sollten, erklären wir Ihnen in unserem Ratgeber. Bitcoin Mining: Geld scheffeln am PC. Auch wenn das Bitcoin Mining in vielen Augen lukrativ erscheint und in den vergangenen Wochen für einen wahren virtuellen Goldrausch gesorgt hat, verdienen ... Hohe Kurse von Kryptowährungen wie Bitcoin, Ethereum und Zcash machen stromfressendes Mining mit Grafikkarten wieder rentabel - ein Geschäft auch für Hersteller von Mainboards und Zubehör.
Mining Bitcoin is as easy as installing the mining software on the PC you already own and clicking start. Anyone can do this and see the money start rolling ... PC Creator - PC Building Simulator; Loading... Autoplay When autoplay is enabled, ... PC CREATOR - BEST CONFIGURATION EVER FOR MINING BITCOINS - Duration: 2:21. Tifou Tech 18,051 views. 2:21 # 1 ... Want to build a GPU+CPU Mining Rig that earns passive income with Cryptocurrency? Look no further! Best mining rig build of 2019! Subscribe to VoskCoin - h... SUBSCRIBE FOR MORE HOW MUCH - http://shorturl.at/arBHL Nviddia GTX 1080 Ti - https://amzn.to/2Hiw5xp 6X GPU Mining Rig Case - https://bitcoinmerch.com/produc...