Comment on: Making money as an independent developer?
The best programmers I have worked with were the ones who could avoid using a complex algorithm or adding more dependencies on the technology stack by simply approaching the problem from a different angle.
I fully agree. If the code becomes incredibly complex then it indicates that maybe you do not understand the problem you are solving. Looking back at the code you want to solve and asking yourself the question what are you trying to solve, will probably uncover design flaws and a much easier way to solve it.
Sure it's a lot of fun to show off your ninja coding skills, but ultimately you will find it difficult to understand and maintain your old code a year or two down the road.
I have never seen code ninja's build projects that actually works.
Comment on: Jetbrains, DataGrip. What do you think?
Not anymore they first went full Subscription model just like Adobe. But developers rebelled since that would mean that if a payment fails your tools instantly stops working.
They also lied about 12 months free if you had a subscription that expired less than a year. I did not renew my previous subscription for 6 months and when I took the bait to upgrade to v10 then I got confronted that they calculated from the last paid subscription. So I only got only 6 month instead of 12 months.
The biggest problem I have with this subscription is that when I don't pay, then I must reinstall an older version, but this takes time and risks breaking my work flow. If I am in a dead moment no problem, but if I am in a critical bug fix, the last thing you want is your tools to drop out.
My trial time is running out, I think I am going to uninstall it because the subscription model is despicable.
Comment on: I did my very first code and I feel quite accomplished. Any tips for keep on going?
What do you mean what is this? It is you compiled program!
Comment on: I did my very first code and I feel quite accomplished. Any tips for keep on going?
I made a mistake
org 100h
mov dx,msg
mov ah,19
int 21h
mov ah,4Ch
int 21h
msg db 'Game Over! Reddit',0Dh,0Ah,'$'
Comment on: I did my very first code and I feel quite accomplished. Any tips for keep on going?
org 100h
mov dx,msg
mov ah,9
int 21h
mov ah,4Ch
int 21h
msg db 'Game Over! Reddit',0Dh,0Ah,'$'
Comment on: These 'women are better programmers than men' articles everywhere aren't necessarily accurate
I want to know what they mean with "better" programmers?
I have been decades being a developer and I have seen million of crappy code written by males when their big ego's claimed that this was superior code. Crap because most of the time it failed to do the job and contained full of bugs, a misery to debug.
It was always big fun to see these superior developers had to debug their code 6 months later and failed to understand their own code.
Comment on: Elm, Functional Front-end Development and Why You Should Care
I started to learn about F# long time ago and that is a functional program. Functional programs are really cool, however I have noticed that when you are so used to the C# and Reshaper combo, using F# or any functional language is actually a drag.
It is not only the functional language that is important, you must also create tools that makes developing it in way faster than conventional languages. Back to the F# example, it takes me exponentially more time to develop in F# as the program grows that if I would use C#-Resharper combo. In the end you ignore the F# (Elm) because it slows you down.
Comment on: Will Window 10 change application development?
The objective is that every device, PC, Tablet, phone, game console and everything to come in the IoT world, should be able to run the same app- thus creating a universal app platform.
That is why Java applications suck on any platform.
That is why anything after Office 2010 starts to suck big time because you have to dumb it down. You have less RAM to work with less display space to show something on, less CPU processing power... you are losing the edge what you had on laptops and desktops.
Universal apps are only useful for simple applications. Like a stock ticker, a new aggregation or a weather channel....
Comment on: I' found that i'm learning about C# (and other programming languages/syntaxes) a thousand times faster when i know the grouping/names/functions of the structure. could anyone compile a list of terms?
You are 25 years too late for that. back on those days you only had one language to choose from. Nowadays everything is mixed language build on tops of flawed libraries. Trying to develop code "logically" or perfect never works and only ends in projects destined to fail even though on paper they are perfect.
Your syntax is irrelevant where you put your { } and [] it is how your code is built up, not the "font ands line spacing chosen'
Comment on: I' found that i'm learning about C# (and other programming languages/syntaxes) a thousand times faster when i know the grouping/names/functions of the structure. could anyone compile a list of terms?
To be honest, I don't think you have the programming gene. If you are so fixated on syntax then you will never will get beyond "Hello World".
Comment on: I' found that i'm learning about C# (and other programming languages/syntaxes) a thousand times faster when i know the grouping/names/functions of the structure. could anyone compile a list of terms?
There is no one way to develop code. Writing code is like writing a book and you have different styles of writing and different types of books.
The syntax of what you write is less important than the structure of your program. And the structure of your program will define you classes and functions. For every project that will be different. When you develop, you must focus on what your program must do and as a consequence use design pattern if they fit or kick them out when they don't fit. Not the way around that a design pattern dictates how your program will work.
Where you put your brackets, new lines,.... is irrelevant. Just make it consistent over your project. I use the K&R style because it puts more code on your screen and not waste space. My goal is to have functions that fits into your screen so you can see it in an instance what it does without need of scrolling.
Comment on: Jetbrains, DataGrip. What do you think?
So if I do a project with a piece of software and only need that 2 or 3 times a year after that to maintain
You are right in this, these tools are not always in permanent use. It can depend on the type of project. They are a waste of money when you do not need them. But you also do not know in advance when you need them.
Using a free tool like SQL developer is less efficient to use but then again it is a trusted companion always there when you need it. It does not magically stop working if you did not use it for a very long time.
Comment on: Jetbrains, DataGrip. What do you think?
It is €9 / month for an individual developer.
If this was not a subscription system, then I would probably have snapped and already had a license. But it is the subscription that is holding me off. It is a pay-or-else you lose your tool ransomeware. And unlike the previous subscription model, it is a pay now-or-else you lose your tool.
The previous subscription model I could delay paying, but with the new subscription, it is a kill switch and you have to uninstall it and reinstall the version you initially purchases.
Jetbrains, DataGrip. What do you think?
2 10 comments 05 Feb 2016 13:44 u/roznak (self.programming) in v/programmingComment on: Programmer quits work on project after getting triggered by a variable name (The comments, however . . .)
It is a variable for gods sake, machine code don't care how it is called because it gets lost when translated into machine language.
Comment on: Apollo 11 source code
It would be nice if someone also explains what we see and how it is used.
Comment on: Concerning type float, if I typed out 38 digits, put a decimal point anywhere on that number except for the ends, and chose my 7 significant digits, can I really deal with those significant digits?
I don't know what you are asking. But using floating points means you lose accuracy every time you do a calculation. And you lose more accuracy the bigger your number becomes.
You can increase accuracy by reducing the number of operations on the float.
float a=4.59
float b=a*2.0*2.0*2.0
float c=b=a*8.0
In the example above "b" will have a lower accuracy then "c".
Also comparing a floating point value comparing it against an smallest value epsilon.
if (a==1.0) {
// never works
}
but this dies:
if (ABS(a-1.0)<0.001) {
// always works
}
Comment on: C The Programming Approach to Solving Problems
From our discussion it is obvious that in order to solve a problem, we need to first understand the problem.
I agree and this is where 90% of the software projects fail. It is actually shocking to see how many developers fixate on design patterns but don't understand the problem they are trying to solve.
But the issue is that during analysis a lot of problems are not very well understood. Or encounter unexpected issues.
Comment on: Staging Servers Must Die
The advantages of pushing directly to production are very clear. Consumers get direct access to features, without the time lag of waiting for them to move through multiple different environments.
ANNNDDDDD it creates one heck of a security breach when one such a feature exposes your inner workings or worse brings down your enterprise.
Using the users as guinea pig is never a good idea especially when you yet released again a beta crap feeling release.
Look at Windows 10! Every single day I get confronted that this is still a badly produced beta version of Windows. The blue screens did stop but every single day I get these black screens that drives you nuts. Every single time Windows did another update I have issues.
Every year I notice software becoming more and more crap. Every year I see the annoyance of yet another program that wants to update almost daily now. And every time it updates you are scared that this time I won't start up again or worse corrupt your data.
Comment on: An anonymous response to dangerous FOSS Codes of Conduct
In the developers world: Developers are not equal
That is while Agile/SCRUM fails because it assumes that all developers are equal.
Comment on: Learn to Code. It's a LOT Harder Than You Think
So is it really that easy to learn how to code and get these high paying jobs?
Reality is that even a small minority of developers get a high paying jobs. And the worst part is those that have a high paying job are probably not even the best developers. You won't get a high paying job if you are a good developer, you only get high paying job is you are good at politics.
Comment on: Learn to Code. It's a LOT Harder Than You Think
Being able to read code, that is definitely handy, but developing code that is not a requirement.
Comment on: Learn to Code. It's a LOT Harder Than You Think
C++ itself is not at all a difficult language (done this for 7 years) . but you need the discipline, to go for quality code and clean up what you allocated.
The reason why I prefer C# over C++ is because the compiler is way faster and there is Resharper that aids C# development. I can build projects way faster in C#.
Comment on: Professionalism Considered Harmful - In Defense of Hacker Culture
For too long, corporate managers have applied a one-size-fits-all methodology (EG — agile), eliminating with extreme prejudice any developer that doesn’t fit that mold.
At last someone that finally understands that the agile madness is destroying your developers team. It does not improve your team, it brings down the team to the worst developer. Of course when everyone matches your worst developer, then you have no way to know anymore if your team has any worth.
I understand where the agile thing is coming from, you are trying to model your best developers, to do exactly like them. Then create some rules and let other repeat these rules hoping you get exactly the same results. But by doing this, you miss the whole point why these great developers are good in the first place: Because they have the freedom to invent and create new tools to build your project.
Comment on: Programming for a Year and Need Direction
How can you have read a 300 page java book and not touched a java project?
Nowadays you can't learn anything by just reading a book, install java and play with it. Also nowedays you don't have to learn one language perfect, just get a grasp as many languages as possible.
What I do is lean new technology at home, but I really learn the technology by working on projects and get paid for it. During the working time I learn what I need for that project. But when I am at home I learn for the projects that I might need in the future.
Computer Chronicles: Programming (1984) Part 1
1 0 comments 18 Jan 2016 12:22 u/roznak (..) in v/programmingComment on: Project Rider A C# IDE
VS and C# + Resharper definitely rocks. It is one of the tools where they can be proud off.
But when you look how beta Windows 10 feels because of this rapid release/subscription cycle, they I guarantee you that VS is also heading that way. Resharper stability went downhill since they started the subscription madness. The features are impressive but buggy. And the last thing you need buggy IDE that introduces a bug somewhere in the million of lines of code you build up over years.
Comment on: Project Rider A C# IDE
I have no idea where this is heading, but I love C# but I want to get rid of Microsoft if possible.
This sounds exciting, even though I hate the Jetbrains subscription model
Comment on: Coroutines in C
A pity. Still, at least C++ users can manage this by having their coroutine be a class member, and keeping all its local variables in the class so that the scoping is implicit.)
Don't let anyone tell you that C can't do C++. Long before C++ existed C people were already using things that mimics C++. C++ basically translates it to C code under the hood.
C++: MyObject.Foo(int a, int b)
Becomes this. Look at the assembly output so see that.
C: Foo(MyObject* this, int a, int b)
Comment on: Coroutines in C
Of course, this trick violates every coding standard in the book. Try doing this in your company's code and you will probably be subject to a stern telling off if not disciplinary action! You have embedded unmatched braces in macros, used case within sub-blocks, and as for the crReturn macro with its terrifyingly disruptive contents . . . It's a wonder you haven't been fired on the spot for such irresponsible coding practice. You should be ashamed of yourself.
Rule number one for professional developers: If code standards prevents you to create functional code, break those rules
Comment on: How hard is it to transition to Java or C# from php
This is their site, don't let the ugly site fool you. https://www.jetbrains.com/
Resharper is this; https://www.jetbrains.com/resharper/
I have to admit that they somehow have an idiot in charge of that company because first they pulled the Adobe Creative Cloud trick on their developers (subscription). Now they appear to have an idiot designer creating their web site that is spitting ugly on a desktop PC. But the tool themselves are great.
Comment on: Why I won't do your coding test
I think the fact that they bring out a coding test, already demonstrates to you that this company sucks.
Comment on: Why I won't do your coding test
Completely agree.
I failed these types of tests before. I failed them because my mind is wired differently than textbook samples. But when you look at my developers history, I will bring your project to a success.
Comment on: How hard is it to transition to Java or C# from php
Visual Studio and get Resharper. It will basically teach you how to write the C# code.
The hardest part is not the language you learn but your ability to translate a problem into a solution. The solutions in PHP, C#, any language is almost the same, just different syntax and code libraries.
Comment on: Starting a tech startup with C++
Starting a tech with C++ is foolish because you are going to waste a lot of time on C++/compiling while the competition will already have passed you in 1/3rd of that time. As a startup focus on what is important first: Having an income. Playing with C++ to make the programs better can be done after your startup us successful.
There is nothing wrong with C++ but customers wants your product cheap and as fast as possible. They don't want to pay for a product that is 4 times more expensive and 4 times slower to develop.
Comment on: Why Java? Tales from a Python Convert : sookocheff.com
I agree, both.
Comment on: Why Java? Tales from a Python Convert : sookocheff.com
Why Java? Why not C#?
I have noticed that many projects in Java tend to be write once run bad on any device.
Of course Java is more cross platform, but C# is coming to cross platform too.
Reverse Engineering Malware For Newbies ToorCon 16
12 3 comments 29 Dec 2015 02:06 u/roznak (..) in v/programmingComment on: It Probably Works - Probabilistic Algorithms are All Around Us
The big problem with probabilistic algorithms is that it might not give the solution you want.
The last year Google searches became useless for me. It always gives me stuff I am not interested in. I have to go to page 2 or 3 to finds the real results I want. The first results are either paid targeted advertisement, or results based on my previous searches. But I don't want yet another similar result, I want to explore new results. Results that I did not find yet. Why would I use Google search if I already know the other links?
I have the same issue with Amazon or Netflix. When it proposes new items then yet again it proposes items I already know. It proposes me things that last time I ignored because it is not interesting.
Comment on: [C#/OWIN] Where can I create list of banned IP addresses and preload it from SQL for the duration of application?
The design of your application depends on what you want tot do with it. There is no single answer.
- Must that list change during operation?
- Is that list shared between different threads?
- Is this a console application? Winforms? WCF service? WPF????
- Is that banned list huge?
Comment on: Practical Machine Learning in F# by Sudipta Mukherjee at Functional Conf 15
F# basically fries your brain if you want to learn it, but it is a very interesting language because it challenges all your conventional languages workflow. C#, Java, C++, VB,.... are very similar languages, just different syntax bit F# brings you back to the first day that you learned programming. You get the same sense that you suck in programming.
Comment on: Why does the Java programming language suck so bad?
C# is one heck of a great language. But the language itself is only partially the reason. It is because of fantastics tools like Resharper that makes developing in C# really fun.
Comment on: Why does the Java programming language suck so bad?
It tries to become too many things and in the end it fails in every single thing. It tries to be too generic. Java clients tends to look like created by a hobbyist compared to applications created in their native language for specific devices.
And sadly enough that is exactly what Microsoft is now doing by dumbing down their Office to these stupid apps Office thing. It tries to run on any device but it it sucks on any device.
Practical Machine Learning in F# by Sudipta Mukherjee at Functional Conf 15
1 1 comment 21 Nov 2015 02:14 u/roznak (..) in v/programmingComment on: The Internet: A dying resource for developers.
The sad reality this is so true.
Comment on: Decentralized Internet Will Save Humanity!
Revolutionary concepts? The Internet was decentralized before the cloud madness.
Comment on: F#, how many of you are using that language?
I didn't know that it was even 10 years old.
I started to learn it 5 years ago, but never could put it in a professional project because other developers did not understood it. Also compared to C# resharper there is not F# resharper. Back to the old scool VS editor.
Comment on: Guide - Web Programming with F#
A silly example:
namespace LogParser
open System.IO
type FSLogParser() =
member public this.LoadFile(fileToLoad : string) =
let lines = File.ReadLines(fileToLoad)
lines |> Seq.iter(fun x -> printfn "%s" x)
lines
member public this.Process(fileToParse : string)=
let ParseFile = File.ReadAllLines(fileToParse)
let ParseFileForErrors =
ParseFile
|> Seq.filter(fun x -> if x.Contains("_warning_") then false else true)
let ParseFileForWarnings =
ParseFile
|> Seq.filter(fun x -> if x.Contains("_warning_") then true else false)
let myFileSet =
let mySubFileSet = Seq.append ParseFileForErrors ParseFileForWarnings
let FileSummary = "Number of Entries : " + ParseFile.Length.ToString() + " Number of Errors : " + (ParseFileForErrors |> Seq.length).ToString()
Seq.append ( FileSummary |> Seq.singleton) mySubFileSet
File.WriteAllLines("Z:\\Test.txt", myFileSet)
ParseFile
C# unit code:
using Microsoft.VisualStudio.TestTools.UnitTesting;
using LogParser;
namespace LogParserTest
{
[TestClass]
public class NUnitTest1
{
[TestMethod]
public void TestMethod1() {
var logParser = new FSLogParser();
var result = logParser.Process("TextFile1.txt");
}
}
}
In F# this is your class method: member public this.Process(fileToParse : string)=
In F# open System.IO is basically your C# using System.IO
So C# can use F# classes and F# classes can use C#.
What Makes F# interesting is that it can process lists in parallel with almost no effort.
Comment on: Guide - Web Programming with F#
F# is a language that will fry your brains, but a very interesting language because it is so unlike all other languages and yet combined with C# a fantastic mix.
It has become open source now and I hope that this language finally gets the love it deserves.
Comment on: F#, how many of you are using that language?
It is also open source now.
F#, how many of you are using that language?
3 4 comments 08 Nov 2015 00:38 u/roznak (self.programming) in v/programmingComment on: Everything can and will go wrong: all functions fail
I always develop my code in such a way that it can recover from failure. It always reverts to a known and predictable state (safe). This makes it easier to recover and maybe try again.
The software will be split up into modules, and if some module has a bug in it because the database has a -1 value and the function expected 0....100, that module can then be disabled and the user can keep on working with the rest of the program. If the bug cause a complete crash and the user has to phone you then you don' find time anymore to fix the bug because you are at the phone all the time.
If that module can be disable or bypassed then you can find time to fix that bug correctly.
Comment on: Building .NET Applications on Linux and Mac
C# is one of the best languages I developed in, you definitely should learn C#.
Comment on: Building .NET Applications on Linux and Mac
These are not desktop applications you can port, these are just those silly apps. And when developing these universal apps you also become depended on Microsoft servers so your apps will start to send telemetry data to Microsoft for targeted advertising.
Comment on: The Internet: A dying resource for developers.
You also started to count in decades. LOL
The Internet: A dying resource for developers.
6 11 comments 04 Nov 2015 22:58 u/roznak (self.programming) in v/programmingComment on: COGTFO Code of Conduct Proposal
We are developers, Jim, not politicians.
Measuring developers experience.
4 4 comments 02 Nov 2015 02:09 u/roznak (self.programming) in v/programmingComment on: These Are the Highest-Paying Programming Languages (do you agree?)
So how realistic is it to hope for a job without a degree?
If you are passionate enough you can reach very high.
Comment on: Side-by-side programming languages comparisons from Rosetta Code
I just rewrote the C++ version that gave the impression that you needed more lines to do the same. Most of the C++ examples wast many lines by putting the {} on separate lines.
Comment on: Side-by-side programming languages comparisons from Rosetta Code
This gives the false illusion that Scala is better than C++
https://rosetta.alhur.es/compare/C++/Scala/#
But here is my version:
class Camera {};
class MobilePhone {};
class CameraPhone: public Camera, public MobilePhone {};
trait Camera
trait MobilePhone
class CameraPhone extends Camera with MobilePhone
Comment on: Can you embed information with ads/propaganda that gets retrieved by aggregating search results on google?
It is called Steganography: https://en.wikipedia.org/wiki/Steganography
Comment on: You Might Not Need jQuery
Why reinvent the wheel making your own functions when you can buy somebody else's (for free)?
Sometimes you create a better wheel.
The thing is, sometimes the library creates more problems than reinventing the wheel.
Comment on: Csharp console magics
I like this video, very basic but perfect for beginners.
Comment on: An Expert Speaks Up on What You Should Know About Programming Languages
Next, ask if they’ve scoped out third-party libraries (i.e., plug-ins and APIs) that can be used off the rack, so the programming team isn’t reinventing the wheel on your dime.
I have heard this myth over and over again. Taking things off the rack in a lot of cases creates does not guarantee good end result. Sometimes the 3rd party libraries causes more problems than if you would have built it yourself.
Sometimes you need to reinvent the wheel because none of the wheels are designed to fit your specific needs.
The choice to use 3rd party libraries or design it yourself all depends on the nature of the project and the quality of the developers. Now how do you know when to build it yourself or use 3rd party libraries, you look how your project proceeds. If the 3rd party library slows you down or it takes too long to find one that fits your need then reinvent the wheel.
Comment on: Is having a Documentation Manager a good idea?
It depends on his technical knowledge. It is an idiot then he is going to waste time from developers. But it would be a big welcome.
However there is something else, if a developer has to write some documentation, then he also has to think about his solution and discover his cool one-liner might not be that easy to document and even have a big design flaw.
Comment on: Unit-testing (embedded) C applications, or Let's write C code that doesn't suck
There is this hype of "unit testing" that will solve all your problems, but in reality unit tests can draw all your resources to keep them green and give the false impression that everything is OK. At one point you will blindly trust the green status not realizing that some idiot developer disabled part of the test code to make it green.
Also unit testing does not guarantee quality code. SCRUM and unit tests tend to create the worst code I have seen.Not in the beginning but after a couple of iterations and when you have way too many unit tests to keep working. The tendency is a quick fix.
Comment on: Nothing is more indicative of a bullshit job than the interview
I know I can't take person very seriously. Really, what can you possiblely being doing that you can avoid such basic structures as those?
I also never have used linked lists except in school. Of course the software libraries probably use it internally. And I have millions of code written myself in probably every domain possible.
What I have learned so far in developing good code is:
- You have to understand the problem you want to solve. Deciding that you will use linked list is meaning less if you don't know what you are building.
- You cannot understand the problem unless you have built big parts of the code the first time. Don't waste your time on design patterns, until you understand the problem.
- Build with fault tolerance in mind. Sooner or later some Noob will make a fault and give your program corrupted data. You don't want to cripple the functionality of a stupid double entry enters your IDictionary.
- Build with easy testing in mind. The code that is easy to test by testers is also easy to develop yourself. I have seen code with more loggings that real functional code. That code became unreadable because the log lines hid it.
- Build with change in mind. Design your code in such a way that if management or the client changes their mind then it can be easily altered. That type of code is also more readable and easier to build.
Comment on: Nothing is more indicative of a bullshit job than the interview
And to the corporate suits that really liked that guy ? He stole $250,000 from them ( not legally stole, but practically ) selling them worthless crap, but they had no clue whatsoever what they were doing, so they probably still like him.
I have seen that over and over and over again.
And somehow they believe that when it is hard and when they took 2-3 more time with 2 times more people then it was a hard work and they deserve a pay raise.
Comment on: Nothing is more indicative of a bullshit job than the interview
When I perform "technical" interviews, I'll pose an architectural problem as if they were a team member, and then collaborate with them to a workable solution.
That is actually the best way, you see their creativity, quality and passion for the job.
What HR tends to do is using bingo words and get the exact same clone developer as they already have. But most good teams do not have 10 equal clones but have different people compensating for the lack of skills of the other team members.
Comment on: Nothing is more indicative of a bullshit job than the interview
I actually have a good boss now, last time he told me, my job is to get you past HR, then it is your turn when he puts me at another client.
Comment on: Nothing is more indicative of a bullshit job than the interview
I went to her direct competition, so that means trouble if they want to sell someone to a client. Once I get through the great HR firewall, then my contracts gets renewed for many years at any clients sites they send me to. So for any company that means years of trouble free income.
Comment on: Nothing is more indicative of a bullshit job than the interview
I really do not know but I do know that the company I was heading to had some developers joining her company that came from that company. Some guy probably told her that I was heading for the competition and maybe she checked the test results and realized that she made a huge mistake. It is pretty obvious that my score was pretty high when you realize that I only had 1/6th the expected time.
It is not the first time that I had this happening.
Comment on: Learn Python Through Public Data Hacking
I have heard a lot about Python but when I look at these samples I have doubts that it scales very well.
I have the impressions that it relies too much on 3rd party components just like Visual Basic was back in the old days.
The examples I have seen can be perfectly done in C# too, with the added advantage that it can scale enormous.
Comment on: Nothing is more indicative of a bullshit job than the interview
Are you one of these HR guys?
That article is spot on.
Comment on: Nothing is more indicative of a bullshit job than the interview
The amount of bullshit questions you are asked in the interview is directly proportionate to the bullshit in the job. Places with interesting puzzles to solve can and will rely on your intrinsic motivation to put up with their dysfunctional and toxic environments.
Nothing is more indicative of a bullshit job than the interview
23 34 comments 02 Oct 2015 20:04 u/roznak (..) in v/programmingComment on: Programming is terrible
We have rituals, cargo culting. We have things called best practices that kind of amount to superstition.
I have seen so many intelligent programmers that are 50% real genuineness and 50% pseudo-science crap.
Comment on: Programming is terrible
It is fantastisc.
When a HR gives your brain teasers, prepare to meet a group with bad management.
So true.
Comment on: The One Method to Eliminate Bad Tech Hires
One Scrum master insisted that all programmers are equal and that every programmer can take over the others code. I told him that he should keep on dreaming. Not only did he waste the teams performance, he also killed the team because he induced unnecessary stress.
But the hardest part to get hired is HR that somehow thinks that it is a bingo game. Those with the most hype words get through, not the experienced ones.
Comment on: Linus Torvalds is tired indeed of "trivially obvious improvements" that are actually buggy
But good developers don't expect others to fix their bugs. I mean if you start a project, at least do the effort to create quality code to the very end. You can't call yourself a good developer if you leave half developed mess around.
Also good developers create code for the none-nerd. It is designed for ease of use, not massive functionality that is half implemented. The interesting things is that when you develop for the none-nerd, you create way better code, because it is easier to use, easier to understand, easier to test and debug and way more compact.
Comment on: Linus Torvalds is tired indeed of "trivially obvious improvements" that are actually buggy
I fully agree, developer myself.
Comment on: Linus Torvalds is tired indeed of "trivially obvious improvements" that are actually buggy
Most Linux application I have seen appear to be designed by nerds for the nerds. It is rarely designed for the none-nerd user, but most of the time a mismatch of different styles put together with tape. So far when I see forks being created is because they add new features and do not fix bugs that were in the old fork itself.
Comment on: Linus Torvalds is tired indeed of "trivially obvious improvements" that are actually buggy
The reason why Linux fails to deliver us not enough consistency in their applications and low quality because people are not interested to fix bugs that are not visually rewarding. Instead of creating yet another fork, go into the code and fix the original fork instead.
Comment on: Jetbrains wants to go the Adobe subscription model way, developers revolts.
The reason why this is a stupid idea is this:
- Subscription means DRM, DRM means a hole in the enterprise firewall.
- Subscription means: I am in deep trouble if my company digs out that project from 4 years ago and asks me to fix a tiny bug
- Subscription means, developments tools failure if you are a Greek citizen that can't pay your taxes anymore.
- Most developers in big companies actually have their personal license, because it takes years before the company decide to purchase it. A subscription is definitely not a good idea. Especially when you have a dead in the water project because they ran out of budget this year. In big companies it can take many months even years before you get a go to update to the newest one. Especially when your are in teams the size of 100+. Visual Studio 2010 is still massively used because of this. Code that could not be migrated because they depend on libraries of companies that do not exist anymore.
- Jetbrains can go broke in a couple of years. Especially now that developers revolt and do not trust Jetbrains anymore. Your project is a sitting duck when they power off their DRM severs.
- Subscription means that Jetbrains is not motived anymore to create new and exciting tools. They got your money, so they stop caring.
Comment on: Jetbrains wants to go the Adobe subscription model way, developers revolts.
It's not that much of a difference since most companies will purchases yearly subscriptions anyway.
That won't happen at all. Companies don't like yearly subscriptions at all. Especially not the big ones I have worked for.
Comment on: Jetbrains wants to go the Adobe subscription model way, developers revolts.
The issue is the ransom ware. Stop paying and you lose your tools.
If your project is tiny, then there is no issue, but if your project space multiple developers for years...
Comment on: Jetbrains wants to go the Adobe subscription model way, developers revolts.
As of November 2, 2015, we will introduce JetBrains Toolbox—a collection of our popular desktop tools (IDEs, utilities and extensions) available on a monthly or yearly subscription basis.
The revolt is, no pay no developers tool. Aka ransom ware: pay or else we take away your developers tools.
Jetbrains wants to go the Adobe subscription model way, developers revolts.
4 9 comments 08 Sep 2015 22:57 u/roznak (..) in v/programmingComment on: Very nice Introduction to C# 6.0
It looks artistic but this is what I see on a desktop.
The left side stays staring on your face actually all the time distracting from the real content on the right. And on a Desktop monitor 75 cm from your nose the words Alex Booker IS HUGE, it draws all your attention.
I know it is a big hype to have such sites but the moment I see this then I immediately click away and don't bother to even read the text. For me it is like one of these screaming advertisements sites as click bait.
I did read the text and it is good but I have absolutely no clue why on Earth it is impossible to have a desktop version too.
Comment on: Very nice Introduction to C# 6.0
To bad that they waste 1/3rd of that site on one giant useless grey bitmap. And the rest of the text you must scroll through.
I mean, come on, you are not going to learn C# on a tablet, but on a desktop computer with a big screen at 75 cm of your nose. That site should be optimized for desktop.
Comment on: Machine Code Instructions
MMX, SSE and SSE2 was never used when I was developing in C++ back then. Pre VS2005!!!
When I started with C# I barely went back to C++.
Comment on: Machine Code Instructions
Compilers at -O3 tend to produce very very efficient code as they're not bound by the limits of human sanity.
But only when it can. Do not blindly trust the -O3 generated assembler, you really must test it.
Sometimes reordering your function and variables can speed things up. E.g. something I have learned is that your function must be written in such a way that the code that is used most of the time is in front of the code that will rarely be called. You help the C compiler to avoid to have a jump in the code that should run most of the time. A jump in the assembler code stalls the execution because it has to reload a new cache. The optimizer can optimize the code that was written but not optimize for what is intended to do.
if x then A() else B() could be slower than if (not x) then B() else A();
Sometimes to gain speed you could have the 2 versions, one optimized for A() and one optimized for B().
note that C# compiles to a bytecode (Common Intermediate Language), not to machine code. CIL,
Don't let the IL code fool you, when you look how the IL code gets translated into real machine code (assembler) then it is very close.
Voat is not very friendly to write code examples, and I do not have lots of time to write code samples. I just hope that it triggers the love for assembly back and that people dare to look under the hood of what the C compiler creates.
Comment on: Machine Code Instructions
I hope that I somehow make people curious and don't get scared of the assembler language. It is not that complicated and scarey at all. It is C that makes it appear more complicated and scarey.
Understand how the assembler is created by your C function or even C# function an you will create faster and more optimal code.
Comment on: Machine Code Instructions
I see an expert here. :-)
Comment on: How to Write Simple Bootloader Tutorial with int 10h, int 16, int 19h using NASM (Netwide Assembler)
I used that example because he really demonstrates the very core without all the crazy C headers and libraries.
Or put it in other words, all the c headers and libraries translate to this simple example.
In coding, 3 years is the max you can get experience in. Anything over 5 years is obsolete and outdated knowledge.
Switching technologies actually trains you into rewiring your mindset. It is that ability to rewire your mindset that makes 5+ years of experience interesting. It demonstrates that they can throw anything at you and you will rewire your brain in a month or so and tackle that problem.