Page 4 of 27

Tired of the old Rails scaffold?

Why Rails scaffold doesn’t work

The need to write a replacement of the Rails scaffold was because the build in one in Ruby on Rails:

  • Does not support namespaces on the controllers and the models it generates funny paths in the views and/or controllers
  • The native way to extend the Rails scaffold was changed frequently I have to spend hours tracing github issues
  • It uses the ugly scaffold.css and it generates it all the time breaking my styles
  • Does some freaky copy/paste optimizations in the controller to get the model. Scaffold should be a starting point from where with few deletes or add few lines of codes to make a usable screen.

The new approach

With scaffold_pico you can create your own pretty administration in a second.

  • No learning curve – if you know Rails you know it.
  • No 3rd party gems slowing your development/production startup times.
  • Clean code
  • Supports namespaces in the models and the controllers

There is also some sugar. With the pico_scaffold you can generate from the beginning fabricators and take care of N+1 by specifying joins/includes clauses. There is separation of the fields for index and editing. There is a search – almost every screen now days has search.

Supports Zurb Foundation, Materializecss CSS frameworks

Here is the github:

Learning programming languages

learn programming





Функционално програмиране


Online help





Remove the mysql root password on development

The world is going crazy. The mysql manual for 5.7.3 is not working.

Here is how to remove the password…

Continue reading

Jailbreak 9.3.3 and afterwards

imageIt is easy. You have to do it! Just save the jailbreak and the Cydia impactor so that you can do the Jailbrake in April 2017.

What I have installed again and is working was:

Name What it does? From repo
Activator Shortcuts everywhere
iCleaner Pro 7.3.0 Claims it free disks space
FlipControlCenter Manage shortcut icons
AppCake Download pirate games
AudioRecorder 2 $ call recorder
Alternative apps:
Call Recorder
dnscrypt-proxy  crypt your dns
 albumshot Smart albums for all apps
 SpringBoard  move fast through the screens

Thireus Extra Recommended Tools
 IPPeek  show the IP on the clock. Use it from activator
 Aquaboard  Fencypency effects
BDaySpotify 2
Unlocks some features on the spotify app
Game cheating tool  research more here
 SystemSoundDisabler Disable all kind of anoying sounds
 LocalIAPStore iOS 9  Inapp purchases for free  Canolli
Minimal hosts blocker  Ads blocker

No time to install

Bridge – import music to Music from
from: – tring now and want to try those also
AppSync Unified – you need this to install unsinged ipa files.

iFile – from here
PhotosLive from – trying now


it has nice list of shortcuts, works bad on ios 9.3.3
MobileTerminal (mine bad choice)  from Karens repo    which is on the same code base iOS Terminal form BigBoss

MTerminal works good –  from the BigBoss repo. – install recommended ios9/ios8/ios7 hacker tools, this includes “newterm” which is updated through ios9. The hacker package installs a bunch of command line utilities like ping, nmap, get, top wget, etc as well. otherwise if you just want terminal just install newterm.


Tried but not using

BioProtect – protect apps with the touch ID
Cameratweak4 (the release there is not properly cracked)


How to clean your photos:

  1. Backup/Delete /private/var/mobile/Media/DCIM
  2. Delete /private/var/mobile/Media/PhotoData


Emails database:  /private/var/mobile/Library/Mail/Envelope Index 
  sqlite> pragma table_info(messages);

Calendar database: /private/var/mobile/Library/Calendar/Calendar.sqlitedb
  pragma table_info(ABPerson);

Phone numbers database: /private/var/mobile/Library/AddressBook/AddressBook.sqlitedb 
  pragma table_info(event);

Call History database: /private/var/mobile/Library/CallHistory/call_history.db 
  sqlite> pragma table_info(call);

SMS database: /private/var/mobile/Library/SMS/sms.db
  sqlite> pragma table_info(message);

More on this on limneos blog

plutil from Erica Utillities – is used to modify the .plist files

Links – the author of audiorecord2 nice source of game downloads


Pirate Sources


Latest iphones jailbrake


case vs if

I notice that a lot of people are writing tons of ifs instead of use the case operator.

The case operator is much more readable. It can do more work than the ifs. And it should be faster by definition. Unfortunately in ruby it is faster only in > 2.x

With case you compare objects and match multiple values.

Continue reading

Good readings for today

Valid docker container/image names

Valid container names are: [a-zA-Z0-9][a-zA-Z0-9_.-]
as pointed here

And probably the valid container names are

hostnameComponentRegexp = match(`(?:[a-z0-9]|[a-z0-9][a-z0-9-]*[a-z0-9])`)

as pointed

Ansible multistage vault file

in ‘staging’ file

vault_file: 'vault_staging'

in ‘production’ file

vault_file: 'vault_production'

in the tasks

- include_vars: "group_vars/{{ vault_file }}"

Building docker image with host network aka –net=host

There is no option to provide the net as param while building the docker images.
So the container doesn’t have internet from inside.
and is common to get this kind of errors

Running in NNNNNNNNN
Err wheezy Release.gpg
  Could not resolve ''

One (stupid) solution is to put in the Docker file

RUN echo "nameserver" > /etc/resolv.conf; cat /etc/resolv.conf

Another is to help Docker with the networking.

Here is a solution is pointed here

# Forward chain between docker0 and eth0
iptables -A FORWARD -i docker0 -o eth0 -j ACCEPT
iptables -A FORWARD -i eth0 -o docker0 -j ACCEPT
# IPv6 chain if needed
ip6tables -A FORWARD -i docker0 -o eth0 -j ACCEPT
ip6tables -A FORWARD -i eth0 -o docker0 -j ACCEPT

And also to configure docker to use a dns server as pointed here

Docker official doc gives instruments to Configure a DNS server for use by Docker

Open the /etc/default/docker file for editing.

$ sudo nano /etc/default/docker

Add a setting for Docker.


Replace with a local DNS server such as You can also specify multiple DNS servers. Separated them with spaces, for example:

–dns –dns

Warning: If you’re doing this on a laptop which connects to various networks, make sure to choose a public DNS server.

ps: nm-tool can be used to check local host DNS server

Save and close the file.

Restart the Docker daemon.

$ sudo restart docker

How to ban lol (League of Legends)

If you want your kid to play outside instead in League of Legends this might help you.

You need to find the ip addresses associated with lol. This is done by visiting this url

Then you need to ban all UDP traffic here is how I have done this with iptables.

I understand that there should be much more simpler way.

if true ; then
/sbin/iptables -A INPUT  -p udp  -s -j DROP
/sbin/iptables -A INPUT  -p udp  -s -j DROP
/sbin/iptables -A INPUT  -p udp  -s -j DROP
/sbin/iptables -A INPUT  -p udp  -s -j DROP
/sbin/iptables -A INPUT  -p udp  -s -j DROP
/sbin/iptables -A INPUT  -p udp  -s -j DROP

/sbin/iptables -A OUTPUT  -p udp  -d -j DROP
/sbin/iptables -A OUTPUT  -p udp  -d -j DROP
/sbin/iptables -A OUTPUT  -p udp  -d -j DROP
/sbin/iptables -A OUTPUT  -p udp  -d -j DROP
/sbin/iptables -A OUTPUT  -p udp  -d -j DROP
/sbin/iptables -A OUTPUT  -p udp  -d -j DROP

/sbin/iptables -A FORWARD  -p udp  -s -j DROP
/sbin/iptables -A FORWARD  -p udp  -s -j DROP
/sbin/iptables -A FORWARD  -p udp  -s -j DROP
/sbin/iptables -A FORWARD  -p udp  -s -j DROP
/sbin/iptables -A FORWARD  -p udp  -s -j DROP
/sbin/iptables -A FORWARD  -p udp  -s -j DROP

/sbin/iptables -A FORWARD  -p udp  -d -j DROP
/sbin/iptables -A FORWARD  -p udp  -d -j DROP
/sbin/iptables -A FORWARD  -p udp  -d -j DROP
/sbin/iptables -A FORWARD  -p udp  -d -j DROP
/sbin/iptables -A FORWARD  -p udp  -d -j DROP
/sbin/iptables -A FORWARD  -p udp  -d -j DROP

here is how I block the website of the “great” game.

/sbin/iptables -A INPUT -d -j DROP
/sbin/iptables -A INPUT -d -j DROP
/sbin/iptables -A INPUT -d -j DROP

© 2020 Gudasoft

Theme by Anders NorénUp ↑