Feeds
Web Review, Week 2024-03
Let’s go for my web review for the week 2024-03.
Cat and Girl - 4000 of My Closest FriendsTags: tech, copyright, law, art, ethics
How does it feel to just want to put something creative out there without being exploited? Very touching comic on the topic.
https://catandgirl.com/4000-of-my-closest-friends/
Tags: tech, ai, ethics
As an industry we definitely should think more often about the consequences of our actions. The incentives are indeed pushing us to go faster without much critical thinking.
https://xeiaso.net/talks/2024/prepare-unforeseen-consequences/
Tags: tech, gpt, war, ethics, business
Unsurprising move, they claim it’s for the betterment of mankind but in practice it’s mostly about capturing as much market share as possible.
https://theintercept.com/2024/01/12/open-ai-military-ban-chatgpt/
Tags: tech, ai, machine-learning, gpt, security, supply-chain
The tone pointing at “open models” is wrong but the research is interesting. It still proves models can be poisoned (open or not) so traceability and secured supply-chains will become very important when using large language models.
Tags: tech, foss, law
Very interesting ruling, this opens the door to more parties being able to sue to enforce the GPL not just the authors.
https://blog.tidelift.com/will-the-new-judicial-ruling-in-the-vizio-lawsuit-strengthen-the-gpl
Tags: tech, vlc, 3d, foss, business
This is a stupid move on Unity’s part… they’re built on LGPL but ban others in their store to have LGPL dependencies. Shame on them. Good move from Videolabs though, wish them lots of success.
https://mfkl.github.io/2024/01/10/unity-double-oss-standards.html
Tags: tech, apple, interoperability, security
Apple keep indeed attracting a bunch of cultists… and this allows them to keep abusing their other customers.
https://pluralistic.net/2024/01/12/youre-holding-it-wrong/#if-dishwashers-were-iphones
Tags: tech, facebook, attention-economy, surveillance
Some more insights on the extent of the companies snitching to Facebook.
Tags: tech, fediverse, facebook
Interesting notes, there seems to be good faith on the Meta side for now… but this leaves more questions than answers still.
https://reb00ted.org/tech/20231208-meta-threads-data-dialogue/
Tags: tech, fediverse, self-hosting, infrastructure
Interesting stats, not that easy to gather. This gives a good overview of where the fediverse instances are hosted though.
https://blog.benjojo.co.uk/post/who-hosts-the-fediverse-instances
Tags: tech, web, fonts, css, optimization
Nice set of tricks to optimize load and render time of webpages.
https://cliffle.com/blog/making-website-faster/
Tags: tech, gpu, machine-learning, security
Interesting vulnerability, not all vendors are impacted though. GPU memory leaks can have unforeseen impacts.
Tags: tech, networking, tools
Looks like an interesting tool to simulate difficult network conditions.
https://github.com/kffl/speedbump
Tags: tech, protocols, data, networking, p2p
Looks like an interesting protocol for resilient peer to peer data stores. Let’s see how it spreads.
Tags: tech, cpu, gpu, computation, economics
A good reminder that even though GPU tend to be faster, the added complexity and price might not be worth it in the end.
https://pythonspeed.com/articles/gpu-vs-cpu/
Tags: tech, git, craftsmanship, tools
Can definitely recommend. The pre-commit project also make managing those a breeze.
https://itnext.io/using-pre-commit-hooks-makes-software-development-life-easier-ef962827aa96
Tags: tech, documentation, writing
Pick your words wisely. If it does happen every time use “will”.
https://jamesg.blog/2024/01/17/will-should/
Tags: tech, engineering, communication
Nice suggestion for talking about your work in various type of situations. Definitely worth trying to frame it like this.
https://tonyfreed.substack.com/p/everyday-storytelling-for-engineers
Tags: tech, remote-working, economics
Interesting report. Apparently so far a more widespread use of remote work doesn’t seem to boost of hinder productivity growth at large scale.
Tags: history, politics
Or why nationalism and war mongering are unwelcome dead ends. I never understood this fascination for Sparta by some people… if you look at what it was without some misplaced romanticism, it definitely looked like an horrible and paranoid environment to live in.
https://slate.com/news-and-politics/2024/01/sparta-300-warriors-history-slavery.html
Bye for now!
Real Python: The Real Python Podcast – Episode #188: Measuring Bias, Toxicity, and Truthfulness in LLMs With Python
How can you measure the quality of a large language model? What tools can measure bias, toxicity, and truthfulness levels in a model using Python? This week on the show, Jodie Burchell, developer advocate for data science at JetBrains, returns to discuss techniques and tools for evaluating LLMs With Python.
[ Improve Your Python With 🐍 Python Tricks 💌 – Get a short & sweet Python Trick delivered to your inbox every couple of days. >> Click here to learn more and see examples ]
Daniel Roy Greenfeld: TIL: Writing decorators for classes
To my surprise writing decorators for classes is easier than for functions. Here's how to do it in annotated fashion with an unnecessary decorator that doesn't accept any additional arguments.
# Write a callable that accepts a cls as an argument def tools(cls): # Write functions that accept "self: object" as an argument. def simplistic_attribute_count(self: object) -> int: """Returns the number of attributes.""" return len(self.__dict__) def docs(self: object) -> str: """Returns the docstring for the class.""" return self.__doc__ # Attach the functions as methods cls.simplistic_attribute_count = simplistic_attribute_count cls.docs = docs # Return the modified class return clsLet's test it out:
@tools class A: """Docstring for testing the tools decorator""" a = A() a.one = 1 assert a.simplistic_attribute_count() == 1 assert a.docs() == 'Docstring for testing the tools decorator'Next up, how to do this while passing in arguments!
LN Webworks: Document for first Drupal contribution
Drupal contribution refers to the collective effort of individuals and organizations who contribute their time, skills, and expertise to the development, improvement, and maintenance of the Drupal content management system (CMS).
Drupal is an open-source platform, and its development relies heavily on contributions from a diverse community of developers, designers, themers, testers, documentation writers, and more.
Why Contribute to DrupalThe Drupal Core project provides the base functionality of Drupal, you can contribute to improving its design, code, documentation, etc
PyCharm: PyCharm 2024.1 EAP Is Open!
This blog post marks the start of the year’s first Early Access Program. The PyCharm 2024.1 EAP 1 build is now accessible for download, providing an early glimpse into the exciting updates on the horizon.
If you’re new to the EAP process, we encourage you to read our introductory blog post. It offers valuable insights into the program and explains why your participation is integral.
Join us in the coming weeks to explore the new features in PyCharm, test them out, and provide feedback on the new additions. Your engagement is what helps us shape the evolution of PyCharm.
User experience Option to scale down the entire IDEPyCharm 2023.1 introduced the ability to zoom in and out of the entire IDE, adjusting the size of all UI elements simultaneously. However, the initial scaling range was limited to between 100 and 200%. In PyCharm 2024.1 EAP 1, we have incorporated a new option allowing users to scale down the IDE to 90%, 80%, or 70%, offering an extended range of customization options.
Django Structure tool windowThis first build also brings multiple improvements to the recently introduced Django Structure tool window. Among other enhancements, there is now an action to register model admin classes.
That’s it for the first week! For the full list of changes in this EAP build, please read the release notes.
Stay tuned for more updates that will be covered in the blog every week until the major release date. We highly value your input, so be sure to provide your feedback on the new features. You can drop a comment in the comments section under this blog post or reach out to our team on X (formerly Twitter). If you come across any bugs while using this build, please report them via our issue tracker.
Talk Python to Me: #445: Inside Azure Data Centers with Mark Russinovich
Wingware: Wing Python IDE Version 10 - January 19, 2024
Wing 10 adds AI assisted code suggestion and refactoring, support for Python 3.12 including faster debugging with the new PEP 669 low-impact monitoring API, Poetry for package management, Ruff for code warnings and reformatting, & more.
See the change log for details.
Download Wing 10 Now: Wing Pro | Wing Personal | Wing 101 | Compare Products
What's New in Wing 10
AI Assisted Development
Wing Pro 10 takes advantage of recent advances in the capabilities of generative AI to provide powerful AI assisted development, including both AI code suggestion and AI driven code refactoring. You can ask Wing to implement missing code at the current input position, or use AI to refactor or enhance existing code by describing the changes that you want to make.
Examples of refactoring requests you can make include:
"Add a docstring to this method" "Create unit tests for class Person" "Add a phone number field to the Person class" "Clean up this code" "Convert this into a Python generator" "Create an RPC server that exposes all the public methods in class CustomServer" "Change this method to wait asynchronously for data and return the result with a callback" "Rewrite this threaded code to instead run asynchronously"Yes, really!
Your role changes to one of directing an intelligent assistant capable of completing a wide range of programming tasks in relatively short periods of time. Instead of typing out code by hand every step of the way, you are essentially directing someone else to work through the details of manageable steps in the software development process.
Support for Python 3.12Wing 10 adds support for Python 3.12, including (1) faster debugging with PEP 669 low impact monitoring API, (2) PEP 695 parameterized classes, functions and methods, (3) PEP 695 type statements, and (4) PEP 701 style f-strings. Wing 9 added support for Python 3.11.
Poetry Package ManagementWing Pro 10 adds support for Poetry package management in the New Project dialog and the Packages tool in the Tools menu. Poetry is an easy-to-use cross-platform dependency and package manager for Python, similar to pipenv.
Ruff Code Warnings & ReformattingWing Pro 10 adds support for Ruff as an external code checker in the Code Warnings tool, accessed from the Tools menu. Ruff can also be used as a code reformatter in the Source > Reformatting menu group. Ruff is an incredibly fast Python code checker that can replace or supplement flake8, pylint, pep8, and mypy.
Try Wing 10 Now!
Wing 10 is a ground-breaking new release in Wingware's Python IDE product line. Find out how Wing 10 can turbocharge your Python development by trying it today.
Downloads: Wing Pro | Wing Personal | Wing 101 | Compare Products
See Upgrading for details on upgrading from Wing 9 and earlier, and Migrating from Older Versions for a list of compatibility notes.
Reproducible Builds (diffoscope): diffoscope 254 released
The diffoscope maintainers are pleased to announce the release of diffoscope version 254. This version includes the following changes:
[ Chris Lamb ] * Reflow some code according to black. [ Seth Michael Larson ] * Add support for comparing the 'eXtensible ARchive' (.XAR/.PKG) file format. [ Vagrant Cascadian ] * Add external tool on GNU Guix for 7z.You find out more by visiting the project homepage.
Andy Wingo: nombrilliant, actually
Today, a middle-aged note: when you are young, unless you been failed by The System, you enjoy a radiant confidence: everything you say burns with rightness and righteousness, that the world Actually Is This Way, You See, and if you think about it, it Actually Should Be This Other Specific Way. This is how you get the fervent young communists and Scala enthusiasts and ecologists and Ayn Randians. The ideas are so right that you become an evangelist, a prophet, a truth-speaker; a youtuber, perhaps.
Then, with luck, you meet the world: you build, you organize, you invest, you double down. And in that doubling, the ideas waver, tremble, resonate, imperceptibly at first, reinforced in some ways, impeded in others. The world works in specific ways, too, and you don’t really know them in the beginning: not in the bones, anyway. The unknowns become known, enumerate themselves, dragons everywhere; and in the end, what can you say about them? Do you stand in a spot that can see anything at all? Report, observe, yes; analyze, maybe, eventually; prophesize, never. Not any more.
And then, years later, you are still here. The things you see, the things you know, other people don’t: they can’t. They weren’t here. They aren’t here. They hear (and retell) stories, back-stories, back-back-stories, a whole cinematic universe of narrative, and you know that it’s powerful and generative and yet unhinged, essentially unmoored and distinct from reality, right and even righteous in some ways, but wrong in others. This happen in all domains: macroeconomics, programming languages, landscape design, whatever. But you see. You see through stories, their construction and relation to the past, on a meta level, in a way that was not apparent when you were young.
I tell this story (everything is story) as an inexorable progression, a Hegelian triptych of thesis-antithesis-synthesis; a conceit. But there are structures that can to get you to synthesis more efficiently. PhD programs try: they break you down to allow you to build. They do it too quickly, perhaps; you probably have to do it again in your next phase, academia or industry, though I imagine it’s easier the second time around. Some corporate hierarchies also manage to do this, in which when you become Staff Engineer, you become the prophet.
Of course, synthesis is not inexorable; you can stop turning the crank anywhere. Perhaps you never move from ideal to real. Perhaps, unmoored, you drift, painter rippling the waters. But what do you do when the crank comes around? Where to next?
Anyway, all this is to say that I have lately been backing away from bashfulness in a professional context: there are some perspectives that I see that can’t be seen or expressed by others. It feel very strange to write it, but I am even trying to avoid self-deprecation and hedging; true, I might not possess the authoritative truth on, I don’t know, WebAssembly, or Scheme language development, but nobody else does either, and I might as well just say what I think as if it’s true.
* * *
Getting old is not so bad. You say very cheesy things, you feel cheesy, but it is a kind of new youth too, reclaiming a birthday-right of being earnest. I am doubling down on Dad energy. (Yes, there is a similar kind of known-tenuous confidence necessary to raise kids. I probably would have forced into this position earlier if I had kids younger. But, I don’t mean to take the metaphor fa(r)ther; responsible community care for the young is by far not the sole province of the family man.)
So, for the near future, I embrace the cheese. And then, where to? I suspect excessive smarm. But if I manage to succeed in avoiding that, I look forward to writing about ignorance in another 5 years. Until then, happy hacking to all, and thank you for your forbearance!
Paolo Melchiorre: My Django roadmap ideas 💡
My ideas for the informal Django roadmap session for 2024, proposed by the new DSF board member, Thibaud Colas.
FSF Blogs: Support EmacsConf through the Working Together for Free Software Fund
Support EmacsConf through the Working Together for Free Software Fund
Acquia.com - Drupal Blog: Keeping Your Drupal Site Secure and Compliant: Best Practices and Expert Insights
Acquia.com - Drupal Blog: Acquia to Support Drupal 7 Through 2025
Acquia.com - Drupal Blog: Why Drupal is the Preferred CMS for Government Websites
Acquia.com - Drupal Blog: End of Life for Drupal 7: What's Next?
Acquia.com - Drupal Blog: SEO Drupal : Un guide pour les marketeurs
The Drop Times: Its Michael vs Michael in the Event Organizers Working Group Election
mark.ie: Drupal Content Access by Path module
Ever needed to give a Drupal content editor access edit site sections instead of the whole site? Introducing the Content Access by Path module.