|
Yes, this is part & parcel of programming. Back when I was slinging code, I used to read books from Scott Meyer ("Effective C++") et al to bring my level of coding practice to that of a fine craftsman.
Did that craftsmanship keep me employable? NO
Do employers give a rat's a33 about such craftsmanship? H3LL NO
Indeed, the reason that Java has become the default application development is because all its belts & suspenders make it so that the product that poor coders put out will not (usually) cause crashes and other failures, since the compiler ensures that everything is neatly belted up. I'd like to say something similar about JavaScript, but that monster makes Java look professorial.
|
|
|
|
|
It looks like you created a template tuple. That proves you do understand tuples!
(I am mostly lost)😊
|
|
|
|
|
My first impression was "tuple? I don't think you read my code right"
And then I realized, you're just looking at my pixel<> template as if it were a tuple, and that makes sense because you can access the channels off of it as though they were tuple fields.
I never looked at it that way, but you're absolutely right.
Maybe you understand more of it than you think?
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
|
|
|
|
|
I was referring to this clause.
template<typename Name1, typename Name2, typename Name3>
I have only ever used tuples in Python:
(anyValue1, anyValue2,…)
slap some items together so you can track them with a single reference. Great for returning multiple pieces of information from a function.
|
|
|
|
|
Ah, those are simply template arguments in C++.
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
|
|
|
|
|
Hi, you wrote that you are already using a parameter pack in the function rgbpixel::channel. Where would that be? Please post the signature(s) of rgbpixel::channel. Is your code somewhere so I could have a look?
Josef Schroettle
|
|
|
|
|
Sure
gfx/include/gfx_pixel.hpp at master · codewitch-honey-crisis/gfx · GitHub[^]
Pixel is at line 504
template<typename... ChannelTraits>
struct pixel {
...
This parameter pack is effectively passed through to each of the metadata query templates, as well as any function that access pixel data, like the implementation of channel<>()
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
|
|
|
|
|
DRY is soooooo overrated.
|
|
|
|
|
I asked him if he could explain the gaps in his resume.
He said "yeah, they are spaces and you type them using the space bar."
I hired him on the spot!
|
|
|
|
|
Sander Rossel wrote: they are spaces
Ah! That's an instant red flag! Real programmers use tabs!
"Go forth into the source" - Neal Morse
"Hope is contagious"
|
|
|
|
|
To paraphrase Al Bundy, "you're hired!"
|
|
|
|
|
I like to imagine I would have merely replied "Yes."
|
|
|
|
|
I thought you hired him based upon content
To err is human to really elephant it up you need a computer
|
|
|
|
|
I don't like the game anyway but It's official England are crap at football
In a closed society where everybody's guilty, the only crime is getting caught. In a world of thieves, the only final sin is stupidity. - Hunter S Thompson - RIP
|
|
|
|
|
pkfox wrote: official England are crap at football
At football tournament's England should be represented by it's media, it would be an all star team.
|
|
|
|
|
But they have the best lager louts.
|
|
|
|
|
|
Looks like it's expensive to be lazy.
A home without books is a body without soul. Marcus Tullius Cicero
PartsBin an Electronics Part Organizer - Release Version 1.4.0 (Many new features) JaxCoder.com
Latest Article: EventAggregator
|
|
|
|
|
I see no reason to reward laziness.
|
|
|
|
|
Especially doing front end applications that interface with large databases ?
Dealing with large SQL requests ?
Anything related to UI/UX ?
CI/CD = Continuous Impediment/Continuous Despair
|
|
|
|
|
Hopefully the back-end API's support pagination and sophisticated searching. (That's a UI/UX clue as well.)
|
|
|
|
|
Have you seen (or read) this book: Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems[^]
I read about half of it and it was so deeply technical I couldn't even believe it.
People all over the Internet _say_ they're reading it or have read it, but I couldn't complete it.
i'm not that smart though. I gave up because it explained Databases etc. in such a deep way it went flying over my head. But, that is probably easy.
Check it out, because I think it may be what you're looking for.
|
|
|
|
|
|
I haven't heard of any, but you might find that different RDBMS vendors handle parallelization of large queries differently.
I know how to search millions of rows in parallel on SQL Server in T-SQL, including how to configure the database system and the hardware it runs on (important!).
I'd be hard pressed to tell you how using Oracle or Postgre. I don't even know if they have "distributed partitioned views" or what they would call them.
My point is you might need to look at books that target a particular flavor of database engine.
Check out my IoT graphics library here:
https://honeythecodewitch.com/gfx
And my IoT UI/User Experience library here:
https://honeythecodewitch.com/uix
|
|
|
|
|
Any book I've read would be dated by 20 years. But, I can give some points from real world experience...
For a SQL/RDBMS
- Do not normalize past level 3 for most things. It's not worth the performance hit.
- Do not use old school Hungarian notation like
tblUsers for names. - Learn what an index is and how to properly use it (hint, they help with reads).
- Learn when to use a flattened/denormalized table (hint, when speed is a must or for a reporting db/table).
- If you're in MySQL, learn the different storage types.
- Learn how to use diagrams well.
- For all things pure, make sure you get a proper handle foreign key constraints to help with data integrity.
- Learn when or when not to use a compound key (hint, many to many).
- Speaking of, learn when to use a many to many relationship (hint, clickety).
- Learn the pros and cons of building a self-referential table (hint, when building a hierarchy of data).
- Lean when to use views (hint, permissions and data access restrictions, read only denormalization).
- Understand why concepts like code-first DB design is only purported by those who don't understand proper DB design.
- Understand that by their design relational DBs are slower than non-relational ones.
- Learn to use triggers to automate some things that would otherwise be tedious.
- And for all things pure again, get a grasp on transactions and connection pools.
- Learn to use SQL profiling tools, these will be your BFF.
There may be a few more points I didn't think of of the top of my head, but mastering those will put you ahead of most peeps.
For a NoSQL
- Learn when to use one. If you need to do semi-realtime anything, NoSQL is awesome. So, stuff like logging is perfect for it.
- They make a great reporting DB if you want to use this rather than a flattened table in your relational DB above.
- They don't use schemas (for the most part) so the learning curve is a breeze compared to SQL.
- Do not use them for mission critical data where it's ok to run a bit slower when data integrity is paramount.
Don't follow the buzzword/hype train. NoSQL is awesome but there's a time and place for both relational and non-relational DBs. NoSQL is super fast and that's its main benefit, but that's not always the only concern.
Jeremy Falcon
modified 3hrs ago.
|
|
|
|