Some basic #search on #Socialhome finally starting to come together. Only on my personal node atm though. Explains why many people got a follow from me just now as I'm eagerly searching and following people from my #diaspora contacts :) Remote direct match lookup is still to come though, so can't reach all pods who don't push over the relay system (btw, you should!). Currently the search is for profiles only. Tags will be added soon, after that full text for content.
On the technical side, after prototyping some solutions, went with
django-haystack for the search framework and
whoosh for the engine. Whoosh is a pure #Python backend with a file index. While this might not offer the performance we will need for large index full text search (from all content!), using Haystack on top means we can just switch transparently to #Elasticsearch at any time without touching pretty much any code - or even support using one or the other. Some people running nodes might not want to install ES.
Landing soon in master, you can try it at my own site if you are interested. It's basic but works.
Any good/bad experience with "django-watson" - https://github.com/etianen/django-watson ?
django-watson - Full-text multi-table search application for Django. Easy to install and use, with good performance.
The State of #Developer Ecosystem #2017 - #Infographic
- Only 55% indicated they write unit #tests 😱 19% of #opensource contributors indicated they don't do unit #testing 😱😱
- 42% indicated they contribute to #opensource regularly or from time to time
- #Linux got a massive 40% share in operating systems, though 21% use #Windows and Linux simultaneously. This is a logical result, since web development pretty much requires using Linux at least virtually. And Linux is a much more popular choice among developers than it is for normal regular Joe users (where the market share is more like 2%).
- Just over 50% indicated they sleep over 6 hours a night. 6% sleep less than 3 hours..
- Only 11% indicated they don't have a hobby project
- Python 3 is used by 53% of Pythonistas. Good riddance Python 2, we're moving on!
- 67% of Pythonistas prefer #Django for their framework
- 88% of developers are under 40 years of age. Which makes me a dinosaur of the industry 😁
It's a survey among many, always interesting to see results and compare between.
The State of Developer Ecosystem 2017 - Infographic | JetBrains
Over 5,200 developers share their insights on modern technologies, programming languages, frameworks, and tools of choice for software development.
Over 10,000 women have attended a #Django Girls workshop!
Over 10,000 women have attended a Django Girls workshop!
If you’re really quiet and listen super hard, you might be able to hear the Django Girls team celebrating the latest milestone… This month the Django Girls Foundation helped support over 10,000 people...
I really wish I had started using this #Django package earlier. I've known about it for a long time but hadn't really checked how easy it makes testing views in Django. Pure awesomeness.
On a related note, I've finally decided while #pytest is great, I do prefer Django test classes. Why? Less magic. Py.test fixtures are like straight from the #RoR world. Django test classes, while slightly more verbose, have a lot of benefits. Better assertions (based on type) and awesome
setUpTestData to keep tests fast, as some examples. Slowly converting all #Socialhome tests to Django tests 👍
I still use Py.test as a test runner though, it has nice flexible cli options for that.
Profile content stream + minor redesign
Added now a new "All content" stream for each profile. This can be found in the user profile. It is always rendered by default if the profile is remote or is a local profile with no pinned content.
Also related to this a minor redesign of the profile page. The "stamped" area with profile information is now centered with two columns on xl-large screens, two columns on left for large screens and full-width on medium or smaller. It now has a user actions drop-down for modifying settings or profile content, and for other user profiles there are the home/follow/unfollow buttons as in stream content.
The navbar also received a rewrite as bumping a #Bootstrap 4 alpha version broke things again.
Would love to receive feedback on the usefulness of the profile stream, or streams in #Socialhome in general. If you have tried Socialhome, did you find the grid layout useful or confusing?
It is likely the design will live quite a bit in the future. The current one was really a "let's try this" idea which still needs to be proven. Underneath the code is starting to suffer from "spaghetti code" problems with lots of #jQuery events firing to pull the strings. I'm seriously considering rewriting the stream with either #React or maybe #Vue. Before that happens, it would be nice to have a clearer idea of the future stream #UX.
If you want to give feedback or discuss these things, feel free to leave some comments here or get in touch via chats or GitHub issues. Private messages don't yet work in the #federation layer so please don't send those yet.
As a reminder for new readers. Socialhome is a #Django powered project aiming to create a platform that allows users to create a simple social profile with dynamic content. All content is federated using the #Diaspora protocol. Streams are in a central role, and we plan to have many types of streams, including custom per user streams.
You can find the code here and some documentation. The official site is https://socialhome.network which is a Socialhome instance itself and open for registration. Feel free to play around and feedback is always welcome!
Socialhome HQ - Socialhome
#Django bugfix release: 1.11.3
#Instagram Makes a Smooth Move to #Python 3
Instagram Makes a Smooth Move to Python 3 - The New Stack
Each day, over 95 million photos and videos are shared on Instagram. The unstoppable photo-centric social media platform has over 600 million registered users — 400 million of whom are active every day. Talk about operating at scale: Instagram kills it at levels most companies can barely even dream about. Even more impressive, though, is …
Seitsemän viikkoa Anderslaisena – Anders Innovations
Seitsemän viikkoa Anderslaisena
Emilia on toisen vuoden tieto- ja viestintätekniikan insinööriopiskelija ja vietti seitsemän viikkoa työharjoittelussa Andersilla.
Analyzing #Django requirement files on GitHub
#Django m2m_changed pk_set is empty - Stack Overflow
Django m2m_changed pk_set is empty
Django version 1.10.7, I have a problem where sometimes my receiving m2m_changed signal on a ManyToMany field has pk_set empty. The model m2m part (note it's a self reference): class Profile(
- Add some fields on a model
- Add functionality related to those fields
- App API routes for not just the fields but the whole model
- Start adding more functionality using shiny new API routes
- Realize fields are probably on the wrong model
- Open a beer
Well, got an API for the model even though don't need it yet :P Luckily #Django REST framework is pretty damn fantastic and a breeze to do API stuff with.
#Django bugfix release: 1.11.2
Well, need an API anyway, might as well do it now :)
#Django Long Running Processes
A big fan of RQ as well.
Django Long Running Processes
The most commonly suggested solution for long running processes is to use Celery. I suspect that if you need scalabilty or high volume, etc… Celery is the best solution. That said, I have be…
3 Reasons to Upgrade to the Latest Version of #Django
3 Reasons to Upgrade to the Latest Version of Django | Caktus Group
APSL/sauron: Sauron is a #Django Channels app and #Micropython #IoT device to monitor toilet status
Uh, ok... sounds... useful.
sauron - Sauron is a Django Channels app and Micropython IoT device to monitor toilet status
#Django 1.11.1 release notes
Getting Djiggy with #Django Models
Getting Djiggy with Django Models – TLDLife
When describing the power of Django to new web developers, a great place to start is the ORM (how you interact with the database using…
Digging Into #Django QuerySets
Lessons from scale: #Django
Lessons from scale: Django – Zeroes & Ones
Things I’ve learnt by running Django in production for the past two years.
#Django 1.11 LTS released
Yay! Congrats team!