I've owned two editions of this book and when working on 3D graphics, this was the most useful book in filling the gaps of mathematical knowledge & understanding. One of the issues I had when learning 3D was that there are so many assumptions made about one's existing math knowledge on linear algebra, vectors, matrices, etc. as I never learned it in high school (at the time, they didn't think it was useful and focused on statistical math instead). This book was really the missing tome that contained everything you needed to know. The code samples also really helped. Highly recommended and I'm glad it's freely available online. I still have my hard copy on the shelf and enjoy flipping through it occasionally.
Was this article written with GPT3? It sure reads like it....
This is what Shortlyai spat out for me:
I like it that the boat in the Suez canal is stuck,
I really do. I can't help but feel good about this,
Not for myself or because I know someone aboard,
But just because it's so nice to see orders being reversed.
Such a long process for me to travel back and forth,
Sometimes with a visa and sometimes not. It would be great if they could shake things up back home.
I like it that the boat is stuck.
I like how the people onboard are still sending their messages,
And I'm sure many of them are thinking that if they wanted to,
They could get off the boat and walk around in Ismailia or Port Said, looking for a job. It'd be great to be able to find work in Egypt, but not everyone would think it's worth all that effort. Plus if they did go ashore there might be an investigation so even if they did a little work for someone on board they might still get into trouble. I know that things will eventually calm down back home but first we'll have a few good years where people can travel freely and without much hassle.
Oh dear. Yet another article that reinforces conflicting messages and gives ammunition to whoever wants to be "in charge" of a product.
No. This is not the authoritative model. It's written like this is what the industry has settled on. But you can design whatever model that you want as long as you're clear on "who actually has buck stops here decision making and accountability over those decisions".
For Scrum adherants...
If you are using Scrum (many claim to be using it but are actually using some variant of ScrumFall), there is a Product Owner role who has "buck stops here" responsibility in the team. The PO does a lot of the "Product Manager" (with revenue/KPI responsibility) and "Product Marketing Manager" (positioning/value based on customers) also. If you are going to have separated out people (Prod Mgr, Prod Mkr, PO), you must designate that the PO has the "buck stops here responsibility" in the Scrum team, and relegate the others to stakeholder roles who hold the PO accountable.
For us, we've done away with the separate roles and said that Product Owners are Product Managers. They have "buck stops here" responsibility. Stakeholders hold them to principles by asking challenging questions: "Are you maximizing value?" -> show us the empirical evidence, etc.
>> The Product Manager
>> "These individuals are often referred to as mini CEOs of a product. They conduct customer surveys to figure out the customer’s pain and build solutions to address it. The PM also prioritizes what features are to be built next and prepares and manages a cohesive and digital product roadmap and strategy."
This is the Product Owner role essentially. If you have a separate Product Manager from a Product Owner, they should definitely not prioritize what features should be built next. Maybe at a very high level they are identifying a market need and saying "Hey there's something here, team - next quarter please figure this out". The PO is responsible for the roadmap, backlog and maximizing the value of the work from the Scrum team.
All the Prod Mgr can really do is to be a good stakeholder, do the research, give lots of good external market inputs to the PO and hold the PO accountable for delivering value.
>> The Product Marketing Manager
>> "The PMM communicates vital product value — the “why”, “what” and “when” of a product to intending buyers. He manages the go-to-market strategy/roadmap and also oversees the pricing model of the product. The primary goal of a PMM is to create demand for the products through effective messaging and marketing programs so that the product has a shorter sales cycle and higher revenue."
Yes and no. Because the PO is so close to the product, speaking to customers, getting feedback from customers from rapidly delivering iterations (again, assuming you are using Scrum(TM) correctly, and not the bastardized "scrum" where devs are relegated to code monkeys), the product positioning/messaging/value propositions and pricing model will naturally emerge from the Scrum team. The PMM as a stakeholder is helping to figure out the go to market strategy, etc, and execute on it in their own agile team.
Again, I stress that each organization can do whatever it wants. I just don't enjoy it when articles like this are referenced to as evidence for why X person's role should have Y responsibility, etc. It's teamwork. Everyone takes responsibility.
Re: Stack Overflow, while I agree with you, most of my experience with SO downvoting has purely to do with other members thinking "I feel this is a stupid question so I will downvote you".
Usually SO is a last resort for me once I have done enough research and read through lots of documentation for hours trying to understand why something does not work as expected.
I ask a question on SO, and rather than being answered, am downvoted and belittled in the comments. It has made SO a toxic place where honest questions that are researched prior are punished. I do understand why it happens though because for every honest question, there's probably thousands of questions from people who obviously don't do any research.
Then having your "Thank you for answering my question" comment removed by SO moderators because they don't want thank you's on the platform... It's just turned into too much of a toxic place and is an absolute last resort.
IMO. Others experiences may be different :)
The point is that people generally downvote for whatever reason they want. Even with community standards that help to educate people, by empowering people to downvote, they just exercise that right and it has consequences for the community.
Question for others running marketplaces: how does Stripe Treasury and Connect play with other payment systems? Or they simply don’t?
The issue we have is that a large percentage of our customers want to pay with PayPal and I suppose in the future that will expand into other payment methods. Because of this we have to be payment method agnostic and we run both Stripe (for CC) and PayPal.
We’ve always been interested in things like Stripe Connect and I’m sure Treasury is interesting also but it all seems very Stripe-locked-in and would only work with payments going via Stripe (credit cards mostly and Apple Pay) which means that marketplaces that support PayPal are out? PayPal has its own marketplace product as well but again, that is too locked into the whole PayPal platform.
For me, I find woodworking and more specifically cabinet-making to be a very full-brain activity much like programming. It requires both left and right brain - technical and creative sides working simultaneously. It's become a joy and passion. I don't do it to save money (though the pieces I do turn out cheaper than if I'd hired someone) but just because I have a vision, and I want that vision to be precisely my vision, not what the contractor wants to do to get their job done cheaper and faster.
I picked up woodworking only a few years ago after buying this place. Watched YouTube videos, attended a workshop where they taught some of the tools and safety. Then did the rest on trial and error.
It depends on your use case. If you're doing relatively straightforward image processing, e.g. resizing on the fly, absolutely Vips is amazing. Check out imgproxy, imaginary, etc.
But for more complex workloads like producing product mockups from incoming user images where you have multiple layers, blend modes, perspective warps, etc. ImageMagick is surprisingly good. We use IM for complex mockups where the inital design is created by a designer in Photoshop - we reproduce all the layer effects in ImageMagick so that it can run server-side with user uploaded images. Works great.
Actually K8S itself as a standard is not complex/hard. If you are a developer and user/consumer of K8S, use it! If the cluster is managed by someone else, K8S is great.
It only gets complex when you have to provision & manage your own clusters. That's where Rancher really shines, as it makes it so much simpler to deploy and manage K8s everywhere.
Not sure about RancherOS and how much it factored into the sale. It could end up merged/transitioned into some Suse-container OS offering
The enterprise K8S business is compelling, especially all the shops using metal/on-prem. I settled on using Rancher and RKE for production clusters just because it was the simplest way to get HA clusters up within minutes without a PhD in K8S.
But I think a lot of the work they are doing on the other parts of K8S are really interesting: K3S, for example, could become very popular for running on IoT and ARM. K3S really put a smile on my face. You just run it and boom, you have a K8S cluster.
How are you using vanilla Kubernetes? I've tried provisioning vanilla K8s on bare metal clusters and I found it to be pure PITA, even with Kubespray.
Rancher's RKE is the first installer I've come across that "just works". Run rke up against a cluster.yml and within minutes you have a HA cluster with ingress ready to rock. K3S is also looking quite good.
In contrast I've spent days staring down the abyss of vanilla K8s. If you have good alternatives for launching K8S on bare metal/on-prem clusters, would be game to try.
Well congrats to the team for the exit. But I am really hoping that this will continue the great momentum that Rancher has.
I've come to quite enjoy Rancher products. I think the work they are doing is fantastic and lowering the bar for entry into Kubernetes, especially for on-prem/bare metal. Just deployed 4 production RKE clusters on bare metal and also using K3S.
It's funny that the original title for this article on CBC was actually "Zoom chats short circuit a brain function essential for trust: Don Pittis | CBC News" and the article only mentioned Zoom. :)
They changed the title and edited I guess after people pointed out that the research itself was not Zoom specific. I'm amazed how Zoom has become synonomous with "video conferencing" when there are so many other viable solutions available.
I am struck by how beautifully expressed this letter is. @antirez, thank you so much.
It's really great to see when someone who is totally honest with themselves and what sparks joy in their life/career, and is also respectful to all the people who depend on the work/artifact. So much respect.
Speaking of carving out a niche on Spotify.... If your kid ever asks Siri/Google/Alexa to play the poop song a few cents of royalties goes to Matt Farley aka the Toiletbowl Cleaners. It’s quite fascinating https://en.m.wikipedia.org/wiki/Matt_Farley
> According to Farley, one song that contains only the word "poop" repeated over and over generates $500 in streaming revenue every month as of 2018, likely in part because children request it from Alexa or other devices.[4][5][6] Farley earned over $23,000 in 2013 from his song catalog.
> Users can fail to configure mailto links to point at their preferred email client irrespective of it being web-based or native. (Unless it is the default for the platform I guess)
That's more the issue. It's just misconfiguration and users who are oblivious to that setting. In the past, I don't believe that Gmail prompts you to make it your default handler, and from the number of support requests we received due to this issue, it's clear that a good number of users do not have their mailto handlers configured.
True. Whenever I sit and watch people use the computer (just watch when they are giving a presentation/screen sharing), I often cringe.
Many don't use the scroll on their mouse/trackpad - they literally look for the scrollbar, click and drag to scroll.
Many are blissfully unaware that the keys Page Up and Page Down move the page up and down or that Home and End move the whole page to the beginning and the end.
BUT, they do know about the Back button on the browser so they end up resubmitting forms/double posting, etc. lol
To clarify, all browsers CAN handle the mailto link as long as the user configures it to open the correct email client. That’s key because there’s many oblivious users who don’t even know about this setting (we know from the number of support requests we get from users angry that the contact link they created on their websites “don’t work”!). :)
Because of the prevalence of webmail like gmail (most of our users are on gmail) there’s many users who aren’t aware that it needs to be configured to open the said webmail page, so the mailto links does nothing. A “Contact me” or “contact support” mailto link won’t open anything, or it will open the default mail client like Mac Mail on Mac....On Windows in the past it would open outlook express lol. :)
A lot of people already mentioned here the Home button. Anecdote: for years we kept getting users asking for a back to top button and we always told them to just use the Home button and they thought it was the most amazing thing ever. Most of our users are on Windows.
Anyway, we did end up having to put a Back to top button. It was clear that users just don’t get it. Most people really don’t know what the Home button does.
That, and you should never use the Mailto: link without writing the email as the text itself. Thanks to webmail, most users do not have their browsers configured to open mailto: so they complain that contact email links on their pages don’t work. Sigh....
Honestly I have given up trying to “keep” engineers because it’s a losing battle. It’s impossible to compete with big tech. From the offers I’ve seen, if FAANG/Big Tech really wants one of your team members, they will get them and there is nothing you can do.
My employees stay because they want to. They enjoy the work, domain, colleagues. The salary is competitive and fair. They can thrive in this environment.
But I am under no illusions about creating some special environment that can prevent them from getting poached. You can throw cash, stocks, options all you want but if Big Tech wants them, they will outbid you.
Just assume that at any moment they can and will get poached and ensure that the business can continue if people leave. Keep the stack simple, stick to standards, minimize NIH etc.
We went through a very tough journey ourselves. When I started the company, I wanted us to just use out of the box Rails. But some senior devs disagreed - we had huge disagreements about it. We ended up spending months building a complex SOA, only to find 3 years later that it wasn't a great implementation and rewriting it (now it's even more complex). Meanwhile, Shopify and others seem to be happily still using mostly stock Rails. And we're in a tough spot where finding developers who can work and be productive with our NIH-stack is quite challenging.
I agree with what the others are saying here. Customers aren't buying our code, they are buying our product/service. Code should not be "bad" (i.e. there should be tests, etc.) but as a startup, I think velocity is more important and we just have to weigh that. We can hack stuff temporarily to ship or do experiments, but we'd have to deal with the debt if we keep that around.
If I had the opportunity to start all over again, I would:
- Stick to well-known frameworks. Use "boring" tech.
- Outsource as much as possible first and don't reinvent the wheel e.g. don't write your own subscriptions/billing, just use Stripe/Braintree/Recurly/Chargebee, use Algolia (don't write your own Elastic) for search, etc. Move fast until you've figured out product/market fit, then optimize for costs, etc.
- Stand your ground on rejecting NIH. Devs will complain because they want space to learn, try new tech, do NIH things (I want to hack stuff to!). IMO it's those NIH things that are often said to be "bad code" - they're not "bad", they were just written in a short amount of time to solve immediate problems and they often don't account for all the strange edge cases, etc.