I bet that if the creator did offer a paid premium version without the mining even at a very reasonable price most users would quietly shutoff and continue using the free mining version....
It was a stupid dev decision possibly motivated by politics.
Every Linux desktop have ALSA installed. Not every Linux desktop have PulseAudio.
It seems to me that if reducing maintenance overhead was the real reason to drop an Audio API, they would have dropped PulseAudio. Not the other way around.
When you don't listen to your userbase to find out what is important for them, you might not have a bright future ahead of you.
Last FireFox version that I have used is 53. I have no intention to return back without ALSA support!
I have started my software dev career in 1999 just before the techno bubble have bursted. I was working at Nortel Networks at that time. It feels that what is described in this story is pretty much the norm since at least the last 15 years, at least for me.
I am a C/C++ programmer and before my professional Perl experience, every problem seemed to be solvable with a C/C++ solution. I have been doing Perl for 18 months with a team of fanatical/religious Perl developers. I guess that is where the term "Perl monk" comes from. They were are blind as I was but instead of seeing C/C++ solutions, every problems for them where solvable with Perl.
It was extremely frustrating to be imposed using Perl when it was obvious that C/C++ would have been a superior choice. I was laughing in my beard when I saw the rest of the team spending energy for weeks to optimize some Perl code and they were excited to finally have increased the performance from 12 iterations/minute to an awesome 18 iterations/minutes when C would have given them thousands of iterations/minutes without effort.
The most horrible part of Perl that I have witnessed is object-oriented Perl with Moose and its huge module dependencies. Its seems like you need the include the whole universe to use some of the most complex Perl modules.
Back then, I hated Perl but since dust has settle down, I have now made peace with Perl and even surprise myself choosing Perl for some tasks that I need to get done such as parsing mbox files. The thing is Perl is the best choice for some specific tasks. For huge software development in Perl (Yes I have seen that. Horrible, absolutly horrible), the problem is that if you have a function supposed to take some numeric input, crunch it through some math formula and give you the result, with Perl, you could pass the string "Potato and carrot" and the function will happily crunch it and give you a meaningless result. Now, try to find out the problem in hundreds of thounsands of lines of Perl code. Good luck!
3 things that can be done to convince your employer to let you work from home
1. Become indispensable
Demonstrate your value. Make your employer want to go the extra mile to keep you happy so you stay in the organisation.
2. Become an independant consultant
The benefit that is relevent to be able to work from home is that being a consultant the usual setup is renewable mandate. Typical mandate length varies but usually it is, 3, 4 or 6 months. Sometimes it can be up to 1 year mandates but those are rarer. What that means for you, is that you will have opportunities several times per year to renegotatiate your work conditions, including the option to work from home.
3. Be in demand
Having several organisations desiring your services is very powerful. For one, having several options gives you the freedom to easily leave from an organisation if the work conditions ever change and stop meeting your expectations.
Secondly, having several organisations competing for your services will make them want you more (scarcity influence principle in action as described in the Influence book from Robert B. Cialdini) and make them more willing to offer what you want to have your services.
C and C++ mix very well. Being able to use C API straight from C++ code, was design goal #1 from day 0 when C++ got invented
Using C++ from C, is a little less straightforward but quite doable. I wrote a small article years ago on how to do it easily. Check for yourself if you are curious
concerning OP question. Despite I'm a C++ person, I would recommand doing it in C first. Yes, there are C++ framework such as Boost but I have never liked these frameworks because it bloats your exec with a lot of code (mostly templates) and it adds a magical layer (things works magically) that has a mystical aura (I mean only few people knows how ASIO really works under the hood). Even if you become an ASIO expert after lot of time, the project will still have the potential to become bloated and inefficient as soon as a new contributor, less knowledgeable will jump in. Efficiency is the price to pay to use these type of framework.
Do what successful projects do, start easy and simple. Use C. If down the road, this appears to not be enough for your needs, reevaluate. FFMPEG comes to mind when thinking about a project that has exactly the same requirement than your project and has been very successful with C
Converting C program into C++ makes you realize how much boilerplate code C++ can remove.
constructors/destructors and replacing code using reallocs often with std::vector.
At the end of the day, know enough C++ so that you can simplify a 500 lines, error-prime C program into an equivalent, simple to understand, 250 lines C++ and you are my C++ hero!
I used to be a big fan of C++ until I realised how this language has so many hairy corners. When you start spending hours figuring out which feature is best to express a certain thing and have to consider all the implications of your choices, this is called mental masturbation. I prefer to focus my mental energy into actually solving problems than figuring out the intricacies of the language. The beast has become way too much complex for my taste! for that reason, I have returned back to C for the most part
and is it useful?
I bet that if the creator did offer a paid premium version without the mining even at a very reasonable price most users would quietly shutoff and continue using the free mining version....
It was a stupid dev decision possibly motivated by politics. Every Linux desktop have ALSA installed. Not every Linux desktop have PulseAudio. It seems to me that if reducing maintenance overhead was the real reason to drop an Audio API, they would have dropped PulseAudio. Not the other way around. When you don't listen to your userbase to find out what is important for them, you might not have a bright future ahead of you. Last FireFox version that I have used is 53. I have no intention to return back without ALSA support!
by the CIA has absolutely no relation to what has happened in Paris...
it wanted to create a remote agent on every computer to have complete access to them?
we are probably just months from having systemd phone home Windows 10 style....
I have started my software dev career in 1999 just before the techno bubble have bursted. I was working at Nortel Networks at that time. It feels that what is described in this story is pretty much the norm since at least the last 15 years, at least for me.
Move along folks, there is nothing to see here...
I am a C/C++ programmer and before my professional Perl experience, every problem seemed to be solvable with a C/C++ solution. I have been doing Perl for 18 months with a team of fanatical/religious Perl developers. I guess that is where the term "Perl monk" comes from. They were are blind as I was but instead of seeing C/C++ solutions, every problems for them where solvable with Perl.
It was extremely frustrating to be imposed using Perl when it was obvious that C/C++ would have been a superior choice. I was laughing in my beard when I saw the rest of the team spending energy for weeks to optimize some Perl code and they were excited to finally have increased the performance from 12 iterations/minute to an awesome 18 iterations/minutes when C would have given them thousands of iterations/minutes without effort.
The most horrible part of Perl that I have witnessed is object-oriented Perl with Moose and its huge module dependencies. Its seems like you need the include the whole universe to use some of the most complex Perl modules.
Back then, I hated Perl but since dust has settle down, I have now made peace with Perl and even surprise myself choosing Perl for some tasks that I need to get done such as parsing mbox files. The thing is Perl is the best choice for some specific tasks. For huge software development in Perl (Yes I have seen that. Horrible, absolutly horrible), the problem is that if you have a function supposed to take some numeric input, crunch it through some math formula and give you the result, with Perl, you could pass the string "Potato and carrot" and the function will happily crunch it and give you a meaningless result. Now, try to find out the problem in hundreds of thounsands of lines of Perl code. Good luck!
1. Become indispensable
Demonstrate your value. Make your employer want to go the extra mile to keep you happy so you stay in the organisation.
2. Become an independant consultant
The benefit that is relevent to be able to work from home is that being a consultant the usual setup is renewable mandate. Typical mandate length varies but usually it is, 3, 4 or 6 months. Sometimes it can be up to 1 year mandates but those are rarer. What that means for you, is that you will have opportunities several times per year to renegotatiate your work conditions, including the option to work from home.
3. Be in demand
Having several organisations desiring your services is very powerful. For one, having several options gives you the freedom to easily leave from an organisation if the work conditions ever change and stop meeting your expectations.
Secondly, having several organisations competing for your services will make them want you more (scarcity influence principle in action as described in the Influence book from Robert B. Cialdini) and make them more willing to offer what you want to have your services.
This was an excerpt of an article that this story inspired me.
C and C++ mix very well. Being able to use C API straight from C++ code, was design goal #1 from day 0 when C++ got invented
Using C++ from C, is a little less straightforward but quite doable. I wrote a small article years ago on how to do it easily. Check for yourself if you are curious
Idioms for using C++ in C programs
concerning OP question. Despite I'm a C++ person, I would recommand doing it in C first. Yes, there are C++ framework such as Boost but I have never liked these frameworks because it bloats your exec with a lot of code (mostly templates) and it adds a magical layer (things works magically) that has a mystical aura (I mean only few people knows how ASIO really works under the hood). Even if you become an ASIO expert after lot of time, the project will still have the potential to become bloated and inefficient as soon as a new contributor, less knowledgeable will jump in. Efficiency is the price to pay to use these type of framework.
Do what successful projects do, start easy and simple. Use C. If down the road, this appears to not be enough for your needs, reevaluate. FFMPEG comes to mind when thinking about a project that has exactly the same requirement than your project and has been very successful with C
Good luck and have fun with your project!
Converting C program into C++ makes you realize how much boilerplate code C++ can remove.
constructors/destructors and replacing code using reallocs often with std::vector.
At the end of the day, know enough C++ so that you can simplify a 500 lines, error-prime C program into an equivalent, simple to understand, 250 lines C++ and you are my C++ hero!
I used to be a big fan of C++ until I realised how this language has so many hairy corners. When you start spending hours figuring out which feature is best to express a certain thing and have to consider all the implications of your choices, this is called mental masturbation. I prefer to focus my mental energy into actually solving problems than figuring out the intricacies of the language. The beast has become way too much complex for my taste! for that reason, I have returned back to C for the most part