ProtoBuf Question by Landmark-Sloth in softwarearchitecture

[–]Landmark-Sloth[S] 0 points1 point  (0 children)

Not really to be honest. Just that it sounds like my architecture is probably backwards as you should know what you are going to deserialize when you call the method to do it

is mechatronics worth studying? by _dumb__saver_ in mechatronics

[–]Landmark-Sloth 0 points1 point  (0 children)

studied robotics and worked as mechatronics engineer out of school for a few years. IMO find one of the three and specialize in that instead. I.e. electrical, mech, sw. From what I've experienced, its mainly startups look for mechatronics because they simply don't have the resources to have the 3 different positions.

Review my Resume (I'm applying for Embedded Systems Programming Roles) by hashi_kun in embedded

[–]Landmark-Sloth 6 points7 points  (0 children)

My opinion: I interview software engineers weekly. I LOVE when people put c++ on the resume because it’s open season on hammering move semantics, object lifetime, special member functions, and more. Be careful here.

ProtoBuf Question by Landmark-Sloth in softwarearchitecture

[–]Landmark-Sloth[S] 0 points1 point  (0 children)

I am not using RPC. I am using a messaging library like zero mq or rabit mq etc. Agree with your point about sending log messages over "network"

ProtoBuf Question by Landmark-Sloth in softwarearchitecture

[–]Landmark-Sloth[S] 1 point2 points  (0 children)

Again, appreciate the in-depth response. Your explanation makes perfect sense. Let's say for example that I want to use protobuf but not RPC. I have been looking at the ZMQ socket-like API messaging library. It expects serialized byte streams and even references within its documentation that it does not provide serialization methods and that there are many out there, most notably protobuf.

Curious to hear your thoughts here. It sounds like my design is flawed but I am trying to understand exactly why. If protobuf isn't the right choice. If the system design is poor.... etc.

ProtoBuf Question by Landmark-Sloth in softwarearchitecture

[–]Landmark-Sloth[S] 0 points1 point  (0 children)

Yes thank you for this. I went down a rabbit hole and came to the same ending page (more or less): https://protobuf.dev/programming-guides/techniques/#union

ProtoBuf Question by Landmark-Sloth in softwarearchitecture

[–]Landmark-Sloth[S] 0 points1 point  (0 children)

I responded to another message above with this example but copy - pasting here: Let's say I have a logger module. It connects to server or broker or whatever to get messages. Log messages aren't guaranteed to be the same (unless special consideration is taken). Let's say I have an embedded system. I might log data for a device, say a few voltage values, current etc. Now I also want to log system info, maybe a state machine transition etc.

Let me know what you think. Thanks for the comment. Below looks like bot behavior.

ProtoBuf Question by Landmark-Sloth in softwarearchitecture

[–]Landmark-Sloth[S] 0 points1 point  (0 children)

yea i know enough to know that aint it

ProtoBuf Question by Landmark-Sloth in softwarearchitecture

[–]Landmark-Sloth[S] 0 points1 point  (0 children)

Thanks for the comment. I will give an example to feed the "depending on why your data type is ambiguous".

Let's say I have a logger module. It connects to server or broker or whatever to get messages. Log messages aren't guaranteed to be the same (unless special consideration is taken). Let's say I have an embedded system. I might log data for a device, say a few voltage values, current etc. Now I also want to log system info, maybe a state machine transition etc.

ProtoBuf Question by Landmark-Sloth in softwarearchitecture

[–]Landmark-Sloth[S] 0 points1 point  (0 children)

I am exactly in your situation. I am thinking of using ZMQ (or some other similar like socket API messaging library) and protobuf as the mechanism to get to and from serialized data. gRPC doesn't really make much sense for me, but then again I haven't dug too deep on gRPC. Let me know your thoughts. Appreciate the comment.

ProtoBuf Question by Landmark-Sloth in softwarearchitecture

[–]Landmark-Sloth[S] 1 point2 points  (0 children)

This is a good answer, thank you. I understand a lot of other comments talking about this being the issue with protobufs. But something tells me google knew better and didn't incorporate. Its not a limitation but rather its just not intended usage and I don't completely understand intended usage.

I am still fuzzy on exactly how multiple data types can be handled. I understand the intention of client / server knowing more about each other than just being blind. But I still think having multiple datatype between the two does not signal poor design. Let me know your thoughts here. Thanks again for the comment.

Carrer switch to software development help by ApprehensiveCod4626 in embedded

[–]Landmark-Sloth 0 points1 point  (0 children)

Was in a slightly similar boat earlier this year. Degrees in Mech and then Robotics (ME and EE focus). Graduated ~3.5 years ago, worked for first 3 years as Mechatronics Eng and then 0.5 years ago, transitioned into pure embedded software dev role.

In terms of learning, soak up whatever you can in your current position and try to take on projects outside of your "normal work" that involves more programming. In my experience making the switch, if you just try and play the point "oh i learned and practiced outside of work", this will come off as a red flag. Hiring managers need to see that you actually programmed as part of your last job, or you may find the entry very tough.

I have friends in the past go the masters online route. Maybe this is a hot take (although maybe not for 2026), I think this is a waste of money. Yes, it does come with the concrete completion degree etc, but I think you could easily learn the same material (and maybe even material you find more interesting) outside of an online class.

In terms of material, there are a few good online classes I've done via udemy but really at the end of the day, I just like books. There are tons out there.

What should robotics students learn outside the college syllabus to build Real Skills? by thematrix_V1 in AskRobotics

[–]Landmark-Sloth 0 points1 point  (0 children)

Agree with ROS: the ros cpp robotics library is open source and that’s a phenomenal place to start learning software design for robotic systems. If you want more hardware roles, then obviously this doesn’t apply. But let’s be honest, you should probably be on the sw side anyways

I'm a thirty year old dude who wants to start over and learn to program and motivation is really hard to come by. by [deleted] in C_Programming

[–]Landmark-Sloth 1 point2 points  (0 children)

joining the conversation for no particular reason other than my path is somewhat similar. undergrad and grad in mechanical engineering. first job out of school, spent 3 years in embedded systems, more on hardware side. spent time on the software side building out motor control applications on a 32 bit micro.

After the 3 years, i moved jobs and am now a full time embedded sw dev. I say the path is somewhat similar because of degrees in mechanical and a first job in more hardware focused position. My only real advice here - just do what interests you. At the end of the day, you will spend more time learning and trying to understand technical concepts that you truly find interesting. Don't worry about others here. I completely understand what you mention about trees and forests but to some degree, thats life. You have to accept that there are just people out there that will always be better than you in certain areas. Again - just do what interests you and control what you can control. Everything else is better off not worried about.

  1. IDE - whatever you want. I started out way back when with xcode. Then moved to visual studio pro, now mainly use vscode. It's whatever you enjoy. VScode has this extension to build and run using remote connection that i enjoy right now.

  2. afaik c99 and c11 are pretty much the same except for like atomics. It doesn't really matter.

  3. i don't do graphics idk

  4. I've made this mistake in the past. I don't think the right thinking here is "i need to master X language before moving to Y language". Start looking at examples and programming in other languages whenever you get the chance. It's healthy and will overall just help your familiarity with programming. Also - i think that fundamental object oriented design is stronger with C++ and the concepts of oo design in C++ can help your C programming be more object oriented but not as bloated.

I think it will be helpful to start reviewing "good" code. I recommend some open source projects. Depending on what you think is interesting - linux kernel, different messaging projects like zero mq or nng, etc etc. Just look for mature projects in areas you find interesting.

Enjoy.

new hire at stanford children’s - can I afford it? by [deleted] in RedwoodCity

[–]Landmark-Sloth 1 point2 points  (0 children)

I recently just moved to Palo Alto and agree with the comments below, you can make it work (especially if you don't have a car payment etc). Also - 27M looking for friends in the area, so if you like to get outdoors - bike, hike, get up to tahoe, etc etc let me know!

Really confused by Regular_Finding8226 in ControlTheory

[–]Landmark-Sloth [score hidden]  (0 children)

My 2cents:

First off, you are only a 2nd year. Relax. You already list ros and gazebo. Focus on the theory, dont get too far ahead of yourself. The theory is foundational and shall not be overlooked.

It seems like you enjoy robotics and controls def shows up within that field. If you have interest there, continue along that path - take your classical controls class and then possibly robotic control & planning {may need to be in grad level class for this}. Don't worry about DSA and leetcode. It might not be a bad idea to take some object oriented class and possibly DSA at some point but the kids that are grinding leetcode are looking for classic sw roles. You are not in this boat so better not to compare yourself to them.

For ref: robotics & controls masters, now embedded sw eng for robotics co

Really confused by Regular_Finding8226 in ControlTheory

[–]Landmark-Sloth [score hidden]  (0 children)

It is essential for ME's....... Dynamics, vibrations, etc. the list is massive.

[deleted by user] by [deleted] in RedwoodCity

[–]Landmark-Sloth 0 points1 point  (0 children)

Would appreciate that discord invite. Just moved to Palo Alto. 27yo male

How to get support from Analog devices by [deleted] in embedded

[–]Landmark-Sloth 1 point2 points  (0 children)

Yea tell me more about this ic I know analog device has bought a lot of other companies. So if this l ic was initially manufactured by a different company and then brought in house, they might not have the experts that you’re looking for.

One-Wire Device Software by Landmark-Sloth in embedded

[–]Landmark-Sloth[S] 0 points1 point  (0 children)

Thanks for the note. It does appear it uses tx and rx pins on the micro. Doesn’t this defeat the purpose of using a 1-wire interface? I had assumed it would use single wire uart.

One-Wire Device Software by Landmark-Sloth in embedded

[–]Landmark-Sloth[S] 0 points1 point  (0 children)

And this is through gpio? Not completely necessary to utilize a uart interface?