Is using this language "professional malpractice"?
Here is this week's digest:
Ask HN: Is university still credible?
The credibility of a university degree is being questioned, particularly with the rise of AI-assisted cheating. The discussion highlights a central conflict: viewing university as a path to a job versus a place for personal enrichment. For many, the high cost makes a return on investment essential, framing the degree as a necessary credential to get a foot in the door with employers.
Key takeaways include:
- Credential vs. Education: A degree is still a powerful social signal and a requirement for many jobs, acting as a filter for hiring managers who are often risk-averse.
- The AI Impact: While there's concern that widespread cheating could devalue recent degrees, others argue that cheating isn't new and a degree still represents years of commitment.
- Actionable Advice: To stand out, recent graduates should supplement their degree with a strong portfolio and real-world experience. The degree may open the door, but demonstrated skill is what secures the job.
Ask HN: Why is "Tea" still on the App Store after so many data breaches?
An app called "Tea," known for its controversial purpose and multiple severe data breaches, remains available and even promoted on the App Store. This has sparked a debate on platform accountability, with several key arguments emerging:
- Inconsistent Enforcement: Apple's App Store review is seen as a facade. Critics argue that financial incentives, like the cut from in-app purchases, and the app's popularity lead Apple to overlook serious security and privacy violations that would get smaller apps banned.
- Industry-Wide Problem: The situation is viewed as a symptom of a broader issue in the software industry, which often lacks the stringent accountability seen in fields like aviation or finance. Developers can release insecure products with few consequences.
- Corporate Euphemisms: Companies often downplay severe security failures with misleading corporate jargon. For example, a publicly accessible database was described as a "legacy data storage system," a tactic used to make incompetence seem like an unavoidable technical issue.
- User Freedom vs. Platform Control: A counter-argument was raised that users should have the freedom to use an app even if it has a poor security record. Granting Apple more "draconian" control to remove apps could set a dangerous precedent for censorship.
Ask HN: Why do so many developers dislike C when I find it inspiring?
A discussion on the C programming language reveals a deep divide between developers who value its low-level control and those who criticize its lack of safety. Proponents cherish C for the 'freedom' it provides, allowing them to build small, efficient programs with a deep understanding of the underlying hardware, free from 'magic,' garbage collection, or telemetry. It's often praised for its role in embedded systems and for teaching fundamental concepts of memory management.
However, critics argue that using C for new projects is 'professional malpractice.' They point out that even the most skilled developers, backed by powerful static analysis tools, consistently produce C code with security vulnerabilities that are impossible in more modern languages. The consensus from this camp is that C's 'freedom' is a double-edged sword that puts users at risk.
Key takeaways from the debate include:
- Context is King: C remains a powerful tool for specific use cases like embedded systems or OS development where resource constraints are tight and direct hardware access is paramount. For general application development, especially in teams, safer languages like Python, Java, or C# are often preferred for their productivity and security guarantees.
- Learning from Alternatives: It's suggested that C programmers explore Rust not necessarily as a replacement, but to learn its memory safety concepts. The 'borrow checker' can offer a new perspective on memory management that is valuable even when writing C.
- Personal vs. Professional: The choice of language often depends on the goal. For personal projects aimed at learning and control, C is rewarding. For professional projects with deadlines and multiple developers, its risks often outweigh its benefits.
Add a comment: