I resigned from Anthropic today. I spent the last three years doing pretraining research at both OpenAI and Anthropic. Neither company is acting responsibly. They are racing straight to self-improving superintelligence and gambling with our lives. More thoughts below.
HTTP/HTTPS Protocols
→ What is HTTP?
HyperText Transfer Protocol (HTTP) is the foundation of data communication on the web. It defines how messages are formatted and transmitted between clients (browsers) and servers.
→ What is HTTPS?
HyperText Transfer Protocol Secure (HTTPS) is the secure version of HTTP. It uses encryption (SSL/TLS) to protect data transfer, ensuring privacy and security.
• How They Work
→ Client (browser/app) sends a request to the server using HTTP/HTTPS.
→ The server processes the request and responds with the requested resource (e.g., a webpage).
→ In HTTPS, all communication is encrypted for security.
• Key Differences Between HTTP and HTTPS
→ HTTP: Data is sent in plain text.
→ HTTPS: Data is encrypted using SSL/TLS.
→ HTTP: Vulnerable to attacks (e.g., man-in-the-middle).
→ HTTPS: Protects against eavesdropping and tampering.
• Advantages of HTTPS
→ Data security and privacy.
→ Trust and credibility (padlock icon in browsers).
→ Better SEO ranking on search engines.
→ Protects sensitive data like passwords and payments.
• Real-World Examples
→ HTTP: Old websites without encryption.
→ HTTPS: Modern e-commerce, banking, and social platforms.
→ Grab the Backend Development with Projects Ebook:
https://t.co/QdeNEmpNfI
How to write bad software:
Standardize nothing. Let each developer pick their own conventions, patterns, languages, and libraries.
Ignore quality. Optimize solely for velocity. Skip reviews, conversations, meetings, pairing, user acceptance testing, and manual or automated tests.
Ignore security. Skip validation, authorization, and authentication. Blindly trust all inputs.
Repeat yourself. Abstract nothing. Always copy/paste.
Ignore performance. Don’t bother caching, optimizing, bundle splitting, adding DB indexes, or performance testing.
Ignore accessibility. Don’t test different browsers, operating systems, configurations, or screen readers. Assume it’s fine.
Measure success by focusing on gameable metrics like story points, lines of code, number of commits, or tickets closed per developer. Make everyone so focused on optimizing these stats that they’re scared to innovate or improve quality.
Build in a vacuum. Don’t ask for feedback. Code for months without any demos.
Create many long-lived non-prod environments like Staging, QA, UAT, pre-prod, and various oddly named environments like dev1, pre-stage for different stakeholders too. Assume adding yet another environment will fix our problems.
Manually move changes between environments. Create separate committees and approval boards for moving code between them, and only allow rare changes.
Manually deploy a huge amount of code extremely rarely. Since this is hard and risky, create a separate “Release advisory board” that must approve each release.
Require all hands on deck for these giant releases since they are risky and often go poorly. Deploy “off hours” so you can take the whole system down for many hours.
Monitor nothing. Wait for customers to call and complain. Ask them what they did and what error was on their screen to figure out what happened.
Bybit Hack Forensics Report
As promised, here are the preliminary reports of the hack conducted by @sygnia_labs and @Verichains
Screenshotted the conclusion and here is the link to the full report: https://t.co/3hcqkXLN5U
unovue/motion-vue has gotten so good in the past month, now pretty much has everything framer motion has for React - very impressive progress, check it out!
https://t.co/EFBd9bVz89