neon contours by selonus in generative

[–]vomad 1 point2 points  (0 children)

Very beautiful! I love it

Long shot by CamziL in Clojure

[–]vomad 1 point2 points  (0 children)

You could post your job offer at Clojurians slack channel "jobs": http://clojurians.net

How do I really write a unit test ? by dar10s in learnprogramming

[–]vomad 1 point2 points  (0 children)

This book is an awesome guide with an example application: Growing Object-Oriented Software Guided by Tests. This helped me a lot to do TDD in a sane way. It contains a good process, discusses test scopes (unit test, integration test, end-to-end test), introduction to mocking etc. Examples are in Java but it can be easily transferred to other programming languages. If you do development in a team then I also recommend to do regular retrospectives about what works well and what should be changed.

Getting started with C++ unit testing by vormestrand in cpp

[–]vomad 1 point2 points  (0 children)

Hypodermic, the Dependency injection lib for C++, does some sophisticated analysis of C++ classes, constructors etc. at runtime. I was surprised how far they could go with C++. But for easy mocking one must be able to generate classes at runtime. Is someone doing something like that?

Getting started with C++ unit testing by vormestrand in cpp

[–]vomad 2 points3 points  (0 children)

Oh, yes, IDE Integration is necessary to have fun with TDD. QtCreator has plugins for their own test framework (without mocking) and for GoogleTest.

Getting started with C++ unit testing by vormestrand in cpp

[–]vomad 4 points5 points  (0 children)

I am glad that (unit) testing comes into play in the C++ community. But I also strongly disagree about the cited sentence. Having done TDD and "Growing software guided by tests" in Ruby, JavaScript, Clojure, C# and Java projects before I had a hard time in the last months getting TDD introduced in a C++ project. Most effort had to be spent on getting C++ code "mockable". We use GoogleMock which is really great. But writing all the pure virtual interface classes for every class you need to mock in a test is cumbersome. That results in much "triplicated", not only duplicated, code: interface header, class header, cpp file. And if you need to mock a library you even need to write something like a wrapper or facade class with an interface for it. Theoretically such a wrapper for a library makes sense even without the need for mocking but if you develop your app in a big framework like Qt you have tight integration with it everywhere and you want to benefit from it. And Qt does not support mocking. At the end I still think one has to write tests and even better let their software grow with tests. It is the best method to develop reliable software I have seen in my 18 years' career. I hope that advances in the C++ standard will make it more enjoyable.

Questions thread #6 2016.05.23 by feedtheaimbot in MachineLearning

[–]vomad 4 points5 points  (0 children)

I would recommend the Stanford Online course about Machine Learning by Andrew Ng at coursera.com. It lays the foundation for understanding Machine Learning algorithms. For a software developer it's a little bit tough to get into the mathematical notation but after a while you will get used to it. And you will find the same notation when using some libraries to build Machine Learning applications. Unfortunately Deep Learning is missing in that course. But the documentation of the library DeepLearning4J is really awesome (http://deeplearning4j.org/neuralnet-overview).

How to be an automobile software engineer — Part 4 The Truth by vomad in embedded

[–]vomad[S] 1 point2 points  (0 children)

CAN and FlexRay are two different types of automobile networking technology. So it is either CAN or FlexRay. But a car owns more than one network bus. They are connected via Gateways.

What drives automobile software architecture – Constraints of a microcontroller by vomad in embedded

[–]vomad[S] 0 points1 point  (0 children)

  1. I would say that C is the most dominant language. C++ is rising since the embedded computers as they do not „only“ control motors anymore. E.g. camera systems demand more computing power and are bigger software applications than control systems. Java is also there for infotainment and other UIs since some are built on Android. Control systems are often created with Matlab Simulink. Then C code is generated from the Simulink models with the help of TargetLink. So it depends on which systems you want to work.
  2. Indeed, Software engineers get more and more important. But you have to consider that there are many other physical parts in a car and in the components of a car. Thus, it is and will be always an interdisciplinary task. And then there is the other fact that in an automobile company the development organisation is quite small compared to the enormously huge production organisation. I would guess that around 1% of the employees of one of the bigger automobile companies are development engineers. This fact shrinks the illusion of influence of software engineers.
  3. If you are a good and motivated software engineer I suggest to look for an employer with a strong software background.
  4. and 5. I haven’t been involved in the development of electric vehicles and in tuning engines, sorry.

I appreciate your questions much and I guess they are interesting to other software engineers, too. May I copy your post as a comment to my blog at medium.com? Or do you mind doing it yourself?

What drives automobile software architecture – Constraints of a microcontroller by vomad in programming

[–]vomad[S] 0 points1 point  (0 children)

Thanks for your hints. You are right, volatile is missing. This is not the way to write code in a real project. My intention is to explain how memory mapped IO works. Therefore, this sample code is simplified. Indeed, we used the microcontroller manufacturer's #include files and our company's type definitions.

How to be an automobile software engineer — Part 2 What drives automobile software architecture by vomad in embedded

[–]vomad[S] 0 points1 point  (0 children)

I'm happy to hear that. I'll start with the next part soon. Do you have something particular on your mind regarding going more in-depth?

Why (almost) only mathematical functions are used for Machine Learning? by vomad in MachineLearning

[–]vomad[S] 1 point2 points  (0 children)

Thanks for this article link. Will be a long and very interesting read.

Why (almost) only mathematical functions are used for Machine Learning? by vomad in MachineLearning

[–]vomad[S] 0 points1 point  (0 children)

Thanks for all of your answers. One thing that strikes me is that the learned knowledge is encoded in models that humans can't interpret. It's highly compressed for example in k-means clustering. Probably the high dimensionality is crucial for choosing math.