Posted on February 9, 2010 in Computers by seadog12 Comments »

I was using twitterfeed.com to post my blog posts on identi.ca and twitter, but since the service behaved sometimes strangely re-posting old posts and spamming my followers (maybe it was my rss fault anyway) I decided to find a proper wordpress plugin to do the job. Twitterupdater is a simple, nice plugin with clean source code but uses twitter service and not the FLOSS and better identi.ca. Fortunatelly identi.ca is API compaliant with twitter so here is a quick tip on how to change the service twitterupdater uses.

  1. Download from twitterupdater.com
  2. Open twitter_updater.php with your favorite text editor, or with wordpress edit plugin feature
  3. Change line 64 from $host = 'twitter.com'; to $host = 'identi.ca';
  4. Change line 96 from $twitterURI = "/statuses/update.xml?source=ingoalstwitterupdate"; to $twitterURI = "/api/statuses/update.xml?source=ingoalstwitterupdate";
  5. Configure the plugin as usual
  6. Enjoy!

Note that this blog post is a test to check if this is going to work ;)

Update: and yes it works! ;)

Extra Tip: You can find all the '@' symbols in twitter_updater.php file and add an extra space after them so identi.ca parses the shorten url as link.

Edit: Testing if the twitterupdater plugin still works with wordpress 2.9.2

Posted on May 31, 2009 in Computers by seadog4 Comments »

Ubuntu provides all the local communities with a mailing list for their communication. The list is based on a wonderful mailing list management program called mailman. Mailman has a special feature that allows persons with more than one mailing address to post to a private list without caring about which of their email addresses is used. All is needed is the registered email to appear in the Reply-to headers of the message.

For example you are registered to a mailing list using the email foo@example.com and you also have the email bar@example.com. If you post to the mailing list using the bar@example.com normally your email will get rejected or holded for moderation (on a private list). If you have into the mail headers the Reply-to field with the address foo@example.com mailman will recognize you and will accept your email.

Recently an email from the social networking site Badoo appeared in Greek Ubuntu Users mailing list. The mail originated from noreply@badoo.com but it's Reply-to headers matched the email of a registered member. Therefore mailman forwarded the email and we all got the spam of Badoo.com

Since this feature of mailman is turned on by default and you cannot change the behavior through the web interface we had to find another way to protect our list from spam. Kostas Milonas, member of our community, created a list with all the social networking sites he could find. By using the "header_filter_rules" of mailman (Privacy Options -> Spam Filters -> Spam Filters) you can now block all social networking sites while maintaining the feature and keeping your users with multiple email addresses happy.

Download the list, ready for mailman with regular expressions and paste the contents in the 'Spam Filter Regexp' box of our mailman administrative web interface.

Posted on May 18, 2009 in Computers by seadog2 Comments »

Η ιδιωτικότητα στο web έχει γίνει πολύ μεγάλο ζήτημα. Δεδομένου ότι το bussiness model του διαδικτύου βασίζεται στις διαφημίσεις, όλοι προσπαθούν να κάνουν τις διαφημίσεις πιο ελκυστικές και άρα προσωποποιημένες, παραβιάζοντας πολλές φορές την ιδιωτικότητά μας. Η λύση στο πρόβλημα αυτό, και σε άλλα ζητήματα που αφορούν τις βόλτες που κάνουμε στο web, είναι μόλις 5 λεπτά μακριά (τουλάχιστον για τους debian / ubuntu χρήστες...)

Σε μία κονσόλα γράφουμε

~# sudo apt-get install privoxy
Εικόνα 1

Εικόνα 1

για να κατεβάσουμε το privoxy, έναν privacy proxy. Δηλαδή το πρόγραμμα αυτό παρεμβάλεται μεταξύ του browser μας και του διαδικτύου και φροντίζει να προστατεύεται η ιδιωτικότητά μας ενώ σερφάρουμε. Για παράδειγμα θα κόψει τις διαφημίσεις, τα περίεργα cookies και τις υπερβολικές πληροφορίες που στέλνει ο browser. Για να χρησιμοποιεί ο browser το privoxy πρέπει να αλλάξουμε μερικές ρυθμίσεις στο gnome: Φροντίστε το "Network Proxy" από το μενού System → Preferences να είναι ίδιο με την εικόνα 1. Επίσης εάν χρησιμοποιείτε τον firefox ρυθμίστε τον έτσι ώστε να υπακούει τις ρυθμίσεις του συστήματος (εικόνες 2 και 3).

Εικόνα 2

Εικόνα 2

Εικόνα 3

Εικόνα 3

Ο privoxy έχει πολλά επίπεδα ιδιωτικότητας τα οποία είναι πλήρως παραμετροποιήσιμα. Σύμφωνα με το README.Debian αρχείο του πακέτου εγκατάστασης η προεπιλεγμένη κατάσταση είναι η "Medium" η οποία διατηρεί μία λογική αναλογία προστασίας / λειτουργικότητας. Σε αυτή την κατάσταση χρησιμοποιώ το privoxy για δύο μέρες χωρίς κανένα πρόβλημα.

Posted on May 12, 2009 in Computers by seadog1 Comment »

gedit-regexΤο gedit είναι ανοιχτό στο desktop μου σχεδόν το 100% του χρόνου. Είτε θέλω να γράψω μία αναφορά, ένα blog spot, μία γρήγορη σημείωση ή κώδικα θα χρησιμοποιήσω gedit. Είναι γρήγορος, έχει αρκετές δυνατότητες (όχι δεν κάνει τα χιλιάδες "κόλπα" ενός πραγματικού IDE. και τι έγινε;) και υποστηρίζει python plugins για όσα δεν κάνει από μόνος του!

Κατά το porting ενός jpeg decoder σε μία ενσωματωμένη πλατφόρμα χρειάστηκα να σβήσω όλα τα printf statements, γιατί πολύ απλά δεν υποστηρίζονται. Με το Regular Expressions plugin για το gedit η δουλειά γίνεται αμέσως. Κατεβάζω, αποσυμπιέζω στο ~/.gnome/gedit/plugins και το ενεργοποιώ από την plugins λίστα του gedit. Done.

Posted on May 7, 2009 in Computers by seadogNo Comments »

Use the bisect module:

import bisect
i = [1,2,3, 6]
bisect.insort(i, 5)

A more detailed example

import bisect
import random
 
# Use a constant seed to ensure that we see
# the same pseudo-random numbers each time
# we run the loop.
random.seed(1)
 
# Generate 20 random numbers and
# insert them into a list in sorted
# order.
l = []
for i in range(1, 20):
	r = random.randint(1, 100)
	position = bisect.bisect(l, r)
	bisect.insort(l, r)
	print '%2d %2d' % (r, position), l

[Via]

Posted on January 23, 2009 in Computers by seadogNo Comments »

Άλλαξα την πηγή των γιορτών για το twitter εορτολόγιο που έχω κάνει γιατί δεν μου φάνηκε πολύ πλήρης η λίστα που χρησιμοποίησα. Τώρα παίρνω την πληροφορία από ένα γνωστό website, διαβάζοντας την πρώτη σελίδα του, η οποία φυσικά είναι HTML.

Με αυτόν τον κώδικα μπορούμε πολύ εύκολα να κρατήσουμε μόνο τo κείμενο και να αφαιρέσουμε όλα τα HTML tags, που αρχίζουν με < και τελειώνουν με >, όπως και τα spaces &nbsp;.

 
def remove_html_tags(data):
    p = re.compile(r'<.*?>|&nbsp;')
    return p.sub('', data)
 

Ελαφρώς τροποποιημένος από τo site "Life is short - you need Python" ;)

Posted on January 18, 2009 in Computers by seadog1 Comment »

Ανακάλυψα μια σελίδα για το πως να δρομολογούμε τα πάντα "πάνω" από μία ssh σύνδεση και αγάπησα ακόμη περισσότερο αυτό το "προγραμματάκι". Το ότι είναι φοβερό το γνώριζα, αλλά το ότι δημιουργεί ένα πλήρως λειτουργικό SOCKS server με απλά ένα επιπλέον switch (-D) το κάνει απίστευτο!

 
~$ ssh -ND 3333 some.host.you.have.account.org
 

Με την χρήση της παραπάνω εντολής δημιουργείται ένας SOCKS server στον υπολογιστή μου, που ακούει στην πόρτα 3333, και δρομολογεί τα πάντα μέσα από το host "some.host.you.have.account.org". Η παράμετρος '-D <port>' είναι για τον SOCKS server και η '-N' δηλώνει ότι δεν θέλουμε να εκτελεστεί shell.

SOCKS server υποστηρίζουν διάφορα προγράμματα, όπως ο Firefox, αλλά και για όσα δεν υποστηρίζουν υπάρχουν λύσεις στην σελίδα που αναφέρομαι παραπάνω.

Δεν νομίζω καν ότι είναι νέο feature, αλλά εγώ τουλάχιστον είχα μείνει στο port forwarding :)

Posted on November 27, 2008 in Computers by seadog7 Comments »

Ένας φίλος μου ζήτησε να τον βοηθήσω να κάνει compile κάποιες εφαρμογές που δεν υπάρχαν σε πακέτα για το Ubuntu.

Η διαδικασία συνήθως είναι αυτή:

  1. Κατεβάζουμε τα sources
  2. Αποσυμπιέζουμε
  3. Τρέχουμε το ./configure μέχρι να σταματήσει να παραπονιέται για missing βιβλιοθήκες ή εκτελέσιμα, φροντίζοντας να κατεβάζουμε τα πακέτα που με τις βιβλιοθήκες που μας ζητά κάθε φορά.
  4. make
  5. sudo make install

Μέχρι εδώ όλα καλά, αλλά εάν θέλουμε να το αφαιρέσουμε; Δεν μπορούμε να κάνουμε ένα απλό apt-get remove, γιατί δεν το εγκαταστήσαμε ως πακέτο. Το χειρότερα έρχονται υπάρξει ένα έκδοση της εφαρμογής η οποία απαιτεί την αφαίρεση τον παλιών αρχείων πριν την εγκατάσταση. Γενικά ξυπνάει ο εφιάλτης των συστημάτων χωρίς package management που εγγυάται την σταθερή πορεία προς ένα format.

Το checkinstall έρχεται να μας σώσει. Ένα πολύ ενδιαφέρον προγραμματάκι που μπορεί να δημιουργήσει πακέτο deb, rpm και tgz (για Slackware) με όλα τα αρχεία που εγκαθηστά η εφαρμογή κατά το 'make install'

Μπορείτε να κατεβάσετε το πακέτο από τα repositories του Ubuntu

apt-get install checkinstall

και στη συνέχεια αντί για sudo make install να εκτελέσετε sudo checkinstall make install. To checkinstall θα δημιουργήσει και θα εγκαταστήσει την εφαρμογή ως πακέτο, δίνοντας λύση στο χάος. :)

Με την ευκαιρία εάν κάποιος ασχολείται με tsunami, παραλίες και τα συναφή μπορείτε να κατεβάσετε το μοντέλο xbeach και το openmpi για το Ubuntu 8.10 που έφτιαξα με τη συγκεκριμένη μέθοδο:

Posted on April 30, 2008 in Computers by seadogNo Comments »

Τώρα που βγήκε το Hardy και πολλά geeks θα προσπαθήσουμε να εντυπωσιάσουμε (και να αποφύγουμε τους πονοκεφάλους των windows :P ) το έτερον ήμισυ με μία εγκατάσταση (στην οποία όλως τυχαίος θα "χάσουμε" τα windows), να θυμηθείτε να ρυθμίσετε το openoffice να σώνει εξ ορισμού σε doc και xls format, για να μην υπάρχουν προβλήματα επικοινωνίας με άλλους μη-μυημένους χρήστες. Βέβαια λίγο πριν τον ύπνο μην ξεχάσετε και το κύρηγμα περί ανοιχτών φορμά έτσι ώστε μέχρι το 8.10 να έχει πειστεί ότι πρέπει να σώζει σε opendocument!

Για τη ρύθμιση ανοίγουμε το Openoffice -> Tools -> Options -> Load / save -> General -> Always save as Microsoft Word (και excel αντίστοιχα)

Posted on April 15, 2008 in Computers by seadogNo Comments »

Αρκετοί από εμάς ασχολούμαστε με το web design, είτε φτιάχνοντας ένας website από την αρχή είτε απλά καλλωπίζοντας το blog μας. Όλοι σίγουρα έχουν αντιμετωπίσει πρόβλημα με την εμφάνιση του website τους ανάλογα με τον browser και το λειτουργικό που χρησιμοποιούν οι επισκέπτες. Για τη λύση αυτού του προβλήματος δημιουργήθηκε το Browsershots.org, ένα opensource project.

Με το browsershots μπορούμε να δούμε πως εμφανίζονται οι σελίδες μας σε περισσότερους από 30 browsers. Το σύστημα είναι μία "φάρμα" από κατανεμημένους υπολογιστές που δέχονται αιτήσεις για να επισκεφτούν μια σελίδα και επιστρέφουν ένα screenshot της σελίδας αυτής. Όλα τα screenshots συγκεντρώνονται στη σελίδα του browsershots.org από την οποία μπορούμε να τα δούμε απευθείας και να τα κατεβάσουμε σαν zip.

Η χρήση browsershots.org είναι δωρεάν και ως project ανοιχτού κώδικά δίνουν ελεύθερα όλη την τεχνολογική υποδομή. Μπορεί ο καθένας να γίνει ένα "εργαστάσιο" παραγωγής screenshots για να συμμετάσχει και να βοηθήσει την κοινότητα.

Επίσης με μόλις 10 ευρώ ενισχύουμε το project βοηθώντας την επιβίωσή του (και την επιβίωση των δημιουργών ;) , απολαμβάνοντας ταυτόχρονα μερικά πλεονεκτήματα. Ένα βασικό πλεονέκτημα είναι η ταχύτερη εξυπηρέτηση του αιτήματος, αφού του browsershots έχει τόση κίνηση που μπορεί να περιμένουμε μέχρι και μισή ώρα για ένα screenshot, ειδικά για τους browser της micro$oft που είναι και οι πιο προβληματικοί!

Next Page »