Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Am I just crotchety?

Am I just crotchety?

Scheduled Pinned Locked Moved The Lounge
designc++comgraphicsiot
15 Posts 6 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • C charlieg

    Worse - non thread safe memory allocation that c++ does at a whim. That drove us crazy for months until we figured out what was going on.

    Charlie Gilley “They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759 Has never been more appropriate.

    H Offline
    H Offline
    honey the codewitch
    wrote on last edited by
    #3

    I don't even use the STL on embedded, mostly because I've run into incomplete and/or non-compliant implementations and I don't want to keep track of which platforms I need to fork for. Secondarily, the way it uses the heap is shameful out of the box. Utterly irresponsible unless you have gobs of RAM to where heap frag is never an issue, so you're usually stuck creating your own custom allocators and your own management scheme, but aside from that, many devices have multiple heaps with different sizes and performance characteristics, and getting The STL to handle that gracefully is just more trouble than it's worth, IMO.

    Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix

    C S 2 Replies Last reply
    0
    • H honey the codewitch

      I don't even use the STL on embedded, mostly because I've run into incomplete and/or non-compliant implementations and I don't want to keep track of which platforms I need to fork for. Secondarily, the way it uses the heap is shameful out of the box. Utterly irresponsible unless you have gobs of RAM to where heap frag is never an issue, so you're usually stuck creating your own custom allocators and your own management scheme, but aside from that, many devices have multiple heaps with different sizes and performance characteristics, and getting The STL to handle that gracefully is just more trouble than it's worth, IMO.

      Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix

      C Offline
      C Offline
      charlieg
      wrote on last edited by
      #4

      The shop I'm leaving cannot spell STL. There were hopes, but design went into a different direction. All of the base code is written in pure C, the HMI - when one is needed is all JavaScript gobbly gook. Company just got fed up with MS bullshit.

      Charlie Gilley “They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759 Has never been more appropriate.

      H J 2 Replies Last reply
      0
      • C charlieg

        The shop I'm leaving cannot spell STL. There were hopes, but design went into a different direction. All of the base code is written in pure C, the HMI - when one is needed is all JavaScript gobbly gook. Company just got fed up with MS bullshit.

        Charlie Gilley “They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759 Has never been more appropriate.

        H Offline
        H Offline
        honey the codewitch
        wrote on last edited by
        #5

        Yeah. As far as I can tell Microsoft didn't truly straighten out their C++ compiler until VS 2022. That's when my standards compliant code started compiling for it, and it wasn't even using the STL, though it makes heavy use of templates.

        Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix

        1 Reply Last reply
        0
        • H honey the codewitch

          There are certain things that are not appropriate in 192KB of SRAM. Garbage collection is one of them. There are certain things that are not appropriate on an 80MHz CPU. Running an interpreter is one of them. So why in the world is MicroPython so popular? It's ridiculously slow, and just recently I've been trying diagnose what looks like (but can't be?) a heap frag issue in some MP firmware. You can also write poor C and C++ code, of course. But the difference is you can also write *good* C and C++ code. :mad:

          Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix

          Richard Andrew x64R Offline
          Richard Andrew x64R Offline
          Richard Andrew x64
          wrote on last edited by
          #6

          I guarantee this is work safe: (This explains the way I see Codewitch.) Google Images[^]

          The difficult we do right away... ...the impossible takes slightly longer.

          H C 2 Replies Last reply
          0
          • Richard Andrew x64R Richard Andrew x64

            I guarantee this is work safe: (This explains the way I see Codewitch.) Google Images[^]

            The difficult we do right away... ...the impossible takes slightly longer.

            H Offline
            H Offline
            honey the codewitch
            wrote on last edited by
            #7

            I have no idea why you'd think that. *hides ACME shipping receipts*

            Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix

            1 Reply Last reply
            0
            • H honey the codewitch

              I don't even use the STL on embedded, mostly because I've run into incomplete and/or non-compliant implementations and I don't want to keep track of which platforms I need to fork for. Secondarily, the way it uses the heap is shameful out of the box. Utterly irresponsible unless you have gobs of RAM to where heap frag is never an issue, so you're usually stuck creating your own custom allocators and your own management scheme, but aside from that, many devices have multiple heaps with different sizes and performance characteristics, and getting The STL to handle that gracefully is just more trouble than it's worth, IMO.

              Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix

              S Offline
              S Offline
              swampwiz
              wrote on last edited by
              #8

              I was on a gig when I wanted to use STL, but was told to roll my own in plain old C. :omg: So much for learning STL! BTW, if you want to get a good laugh, look at Scott Meyer's Effective STL book. The compiler warnings/errors are truly grotesque.

              1 Reply Last reply
              0
              • H honey the codewitch

                There are certain things that are not appropriate in 192KB of SRAM. Garbage collection is one of them. There are certain things that are not appropriate on an 80MHz CPU. Running an interpreter is one of them. So why in the world is MicroPython so popular? It's ridiculously slow, and just recently I've been trying diagnose what looks like (but can't be?) a heap frag issue in some MP firmware. You can also write poor C and C++ code, of course. But the difference is you can also write *good* C and C++ code. :mad:

                Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix

                R Offline
                R Offline
                Rage
                wrote on last edited by
                #9

                Windows has been running for ages on computers to slow to run it :laugh:

                Do not escape reality : improve reality !

                1 Reply Last reply
                0
                • C charlieg

                  The shop I'm leaving cannot spell STL. There were hopes, but design went into a different direction. All of the base code is written in pure C, the HMI - when one is needed is all JavaScript gobbly gook. Company just got fed up with MS bullshit.

                  Charlie Gilley “They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759 Has never been more appropriate.

                  J Offline
                  J Offline
                  jochance
                  wrote on last edited by
                  #10

                  I could draw metaphor for choosing js over msft but none would be appropriate for posting here... too vulgar.

                  C 1 Reply Last reply
                  0
                  • Richard Andrew x64R Richard Andrew x64

                    I guarantee this is work safe: (This explains the way I see Codewitch.) Google Images[^]

                    The difficult we do right away... ...the impossible takes slightly longer.

                    C Offline
                    C Offline
                    charlieg
                    wrote on last edited by
                    #11

                    I am not clicking on that :)

                    Charlie Gilley “They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759 Has never been more appropriate.

                    1 Reply Last reply
                    0
                    • J jochance

                      I could draw metaphor for choosing js over msft but none would be appropriate for posting here... too vulgar.

                      C Offline
                      C Offline
                      charlieg
                      wrote on last edited by
                      #12

                      The context of my comment goes back 10 years or more, when Microsoft abandoned the embedded devices market and threw an entire industry under the bus. Where once I used WinCE and WEC7, my customer said "f&&* this" and moved to devices that run on "we don't care just give me a modern browser." Microsoft erred in trying to port their OS and desktop to embedded devices, but they did a great job marketing it. Then they abandoned the entire platform, tools, etc. After a few years they came back with their new offerings. No traction. No one in the embedded space I work in is using anything Windows, and as a professional I would seriously question your decisions if you wanted to push that crap. The bus left the station a long time ago.

                      Charlie Gilley “They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759 Has never been more appropriate.

                      J 1 Reply Last reply
                      0
                      • C charlieg

                        The context of my comment goes back 10 years or more, when Microsoft abandoned the embedded devices market and threw an entire industry under the bus. Where once I used WinCE and WEC7, my customer said "f&&* this" and moved to devices that run on "we don't care just give me a modern browser." Microsoft erred in trying to port their OS and desktop to embedded devices, but they did a great job marketing it. Then they abandoned the entire platform, tools, etc. After a few years they came back with their new offerings. No traction. No one in the embedded space I work in is using anything Windows, and as a professional I would seriously question your decisions if you wanted to push that crap. The bus left the station a long time ago.

                        Charlie Gilley “They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759 Has never been more appropriate.

                        J Offline
                        J Offline
                        jochance
                        wrote on last edited by
                        #13

                        I remember that. I don't do embedded aside hobbyist stuff. I still think choosing js if anything else is at all possible is a bigger mistake than any I made in that post.

                        C 1 Reply Last reply
                        0
                        • J jochance

                          I remember that. I don't do embedded aside hobbyist stuff. I still think choosing js if anything else is at all possible is a bigger mistake than any I made in that post.

                          C Offline
                          C Offline
                          charlieg
                          wrote on last edited by
                          #14

                          5 years ago I would completely agree with you. But, these days I can drop a gigabit ethernet device on a board along with a 400MHz+ ARM process that services a dirt cheap touchscreen running a current browser, and I don't have to worry about the touchscreen's OS. I can then pull up a browser on my phone, or my desktop and talk to the device. Touchscreen maker gets funky? Next maker. As gnarly as JavaScript is, I hate looking at it (my personal problem), it works. And I don't think MS can f with JavaScript. Or a browser. It represents a stable platform relative to Microsoft. My customer switched, there's a whiz kid in the s/w group that pounded out a framework, and they aren't looking back. The application uses JavaScript, Web sockets and more - all of it open source with people that understand you cannot break what you released before. Would I use JavaScript for a desktop application? Unlikely, but then again....

                          Charlie Gilley “They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759 Has never been more appropriate.

                          J 1 Reply Last reply
                          0
                          • C charlieg

                            5 years ago I would completely agree with you. But, these days I can drop a gigabit ethernet device on a board along with a 400MHz+ ARM process that services a dirt cheap touchscreen running a current browser, and I don't have to worry about the touchscreen's OS. I can then pull up a browser on my phone, or my desktop and talk to the device. Touchscreen maker gets funky? Next maker. As gnarly as JavaScript is, I hate looking at it (my personal problem), it works. And I don't think MS can f with JavaScript. Or a browser. It represents a stable platform relative to Microsoft. My customer switched, there's a whiz kid in the s/w group that pounded out a framework, and they aren't looking back. The application uses JavaScript, Web sockets and more - all of it open source with people that understand you cannot break what you released before. Would I use JavaScript for a desktop application? Unlikely, but then again....

                            Charlie Gilley “They who can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.” BF, 1759 Has never been more appropriate.

                            J Offline
                            J Offline
                            jochance
                            wrote on last edited by
                            #15

                            There can't be very good overlap with embedded and js when it comes to hiring. And I don't think it's a personal problem it's just that language is like that new article post with the human skin fake face out of Japan. It's an abomination.

                            1 Reply Last reply
                            0
                            Reply
                            • Reply as topic
                            Log in to reply
                            • Oldest to Newest
                            • Newest to Oldest
                            • Most Votes


                            • Login

                            • Don't have an account? Register

                            • Login or register to search.
                            • First post
                              Last post
                            0
                            • Categories
                            • Recent
                            • Tags
                            • Popular
                            • World
                            • Users
                            • Groups