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. Coding for the future

Coding for the future

Scheduled Pinned Locked Moved The Lounge
designhardwarecomgraphicsadobe
5 Posts 2 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.
  • H Offline
    H Offline
    honey the codewitch
    wrote on last edited by
    #1

    Part of the reason I wrote my graphics library is because existing ones (aside from LVGL) produce content that looks like it's from the early 1990s. No antialiasing. Blocky raster fonts, no alpha blending, etc. The reason for that is probably because a lot of these libs started out on mediocre hardware like Arduino Atmel based 8 bit boards. I'm not really interested in targeting 8 and 16 bit machines now that 32 bit is so cheap. And RAM and flash space will only grow even as size and power consumption decrease. I've been coding with eye toward supporting hardware of today and of tomorrow, rather than legacy hardware. That's why my graphics library supports SVG and Truetype. It does so even though the Tensilica LX6's floating point processor used in the ESP32 is so anemic - an ARM Cortex M4's FP is pretty good, and eventually Tensilica will probably catch up or go under. I'm not sure about RISC-V floating point performance, or if that's even a thing but ESP32 seems to be moving that direction. That's what I care about. My library wasn't written 10 years ago. I'm making 2.0 *now* it should be forward thinking, given I have to pick and choose what I want to include. I probably scared @Rick-York with my truetype support (Wait until he hears about my SVG/xml support) :laugh: but I added it in part because of this philosophy of future proofing my code. I don't know. Maybe it's a really bad idea and I haven't run into why yet, but I'd much rather write code that hardware of today almost struggles with if it means it can fly in the future. :)

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

    C 1 Reply Last reply
    0
    • H honey the codewitch

      Part of the reason I wrote my graphics library is because existing ones (aside from LVGL) produce content that looks like it's from the early 1990s. No antialiasing. Blocky raster fonts, no alpha blending, etc. The reason for that is probably because a lot of these libs started out on mediocre hardware like Arduino Atmel based 8 bit boards. I'm not really interested in targeting 8 and 16 bit machines now that 32 bit is so cheap. And RAM and flash space will only grow even as size and power consumption decrease. I've been coding with eye toward supporting hardware of today and of tomorrow, rather than legacy hardware. That's why my graphics library supports SVG and Truetype. It does so even though the Tensilica LX6's floating point processor used in the ESP32 is so anemic - an ARM Cortex M4's FP is pretty good, and eventually Tensilica will probably catch up or go under. I'm not sure about RISC-V floating point performance, or if that's even a thing but ESP32 seems to be moving that direction. That's what I care about. My library wasn't written 10 years ago. I'm making 2.0 *now* it should be forward thinking, given I have to pick and choose what I want to include. I probably scared @Rick-York with my truetype support (Wait until he hears about my SVG/xml support) :laugh: but I added it in part because of this philosophy of future proofing my code. I don't know. Maybe it's a really bad idea and I haven't run into why yet, but I'd much rather write code that hardware of today almost struggles with if it means it can fly in the future. :)

      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
      #2

      Setting Rick York aside, I think you scare a lot of people here. You're the type I want to keep locked in the lab. :) You are a small company and have the benefit, luxury, dream of being able to focus so clearly. I wrapped up 20 years with a company that made stuff for factories. Once the software was "done", everyone moved on to the next product. No real thought to s/w maintenance, but they were getting better. It's all about your business model and your product.

      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 1 Reply Last reply
      0
      • C charlieg

        Setting Rick York aside, I think you scare a lot of people here. You're the type I want to keep locked in the lab. :) You are a small company and have the benefit, luxury, dream of being able to focus so clearly. I wrapped up 20 years with a company that made stuff for factories. Once the software was "done", everyone moved on to the next product. No real thought to s/w maintenance, but they were getting better. It's all about your business model and your product.

        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

        Well my graphics library straddles two worlds. I built it for facilitating my professional work. I wanted something I could tailor rapidly as client demands required it, and existing embedded libraries were either too primitive, or kind of locked you into a particular look and feel, or maybe didn't work well with e-ink, etc. That said, I didn't bill anyone for it. Instead I open sourced it. That's where a lot of my ecosystem is. It makes me very fast at coding, and allows me a lot of control over what I create without having justify it to anyone, and I can maintain primary creative control. It's a lot of unpaid effort but I enjoy it, and it allows me to produce content for this site as well. So while I do use this for my company, and it fills an important role, it wasn't strictly a business driven decision, and wasn't something I was billing for, if that makes sense. :)

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

        C 1 Reply Last reply
        0
        • H honey the codewitch

          Well my graphics library straddles two worlds. I built it for facilitating my professional work. I wanted something I could tailor rapidly as client demands required it, and existing embedded libraries were either too primitive, or kind of locked you into a particular look and feel, or maybe didn't work well with e-ink, etc. That said, I didn't bill anyone for it. Instead I open sourced it. That's where a lot of my ecosystem is. It makes me very fast at coding, and allows me a lot of control over what I create without having justify it to anyone, and I can maintain primary creative control. It's a lot of unpaid effort but I enjoy it, and it allows me to produce content for this site as well. So while I do use this for my company, and it fills an important role, it wasn't strictly a business driven decision, and wasn't something I was billing for, if that makes sense. :)

          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

          It makes sense, but I started my career before opensource. Using opensource is a bit weird. If you are small, it makes you very agile, etc. If you are corporate, there are so many hoops to jump through it gets silly. Don't get me wrong, stick a "free" sign in front of a development manager and they start to hyperventilate. But from a corporate world, there's nobody to sue if things go sideways. Don't even get me started on security - not relevant to your library. I guess my point is that for the last 20 years, the products (software was a necessary evil) was a fire and forget development effort. There was no point in worrying about maintenance, portability, etc. They could have saved so much effort, but the coding kitties (reference to herding cats) never were forced to stop cloning code, it just moved to the next project and ship it.

          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 1 Reply Last reply
          0
          • C charlieg

            It makes sense, but I started my career before opensource. Using opensource is a bit weird. If you are small, it makes you very agile, etc. If you are corporate, there are so many hoops to jump through it gets silly. Don't get me wrong, stick a "free" sign in front of a development manager and they start to hyperventilate. But from a corporate world, there's nobody to sue if things go sideways. Don't even get me started on security - not relevant to your library. I guess my point is that for the last 20 years, the products (software was a necessary evil) was a fire and forget development effort. There was no point in worrying about maintenance, portability, etc. They could have saved so much effort, but the coding kitties (reference to herding cats) never were forced to stop cloning code, it just moved to the next project and ship it.

            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

            I like having "my babies" like my graphics library that even has its own website, and lasts from project to project. I find it satisfying to work on them, so I am glad I have the opportunity to do so.

            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
            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