regarding a secure router, the .cz tld operator cznic (authors of knot dns) are building high-security high-performance opensource hw/sw router (coming in October) https://www.indiegogo.com/projects/turris-omnia-hi-performan... https://www.turris.cz/en/
HN user
iki23
Zenbook, cottage veranda or garden, between two rivers 15km from Prague (1h on bike) ... just now, many birds are singing here from March to July
chrome/ff dev tools have source maps support, I can work directly with coffee source the same way, as I work with less source instead of compiled css ... only coffeeconsole is in a separate tab via chrome extension
sure, using source maps in chrome dev tools, I can work directly with coffee source, the same way I work with less source instead of compiled css
+1, CS can be learned in few hours and any questions on what each constuct produces can be quickly resolved in coffeeconsole for chrome
Verification: lead development of 50MD and 300MD mobile html5 apps for major UK TV's and even people who did see CS first time were able to pick it up quickly. I had literally about 5 cases when I had to answer some chat questions on how CS works, and about the same count when I corrected/optimized some CS usage in a code review.
The productivity gain was impressive. In ducktyping, but esp. in __understanding__ the code quickly.
We're not going back.
won't scale for hundreds of feeds; I use thousands
I'm using MSYS http://mingw.org/wiki/msys heavily, it has bash and all file and text processing utils. It's also distributed as a part of Git port http://msysgit.googlecode.com.
Lots of other utils can be also found in GnuWin32 http://gnuwin32.sourceforge.net/packages.html.
Btw, the sed in Gow would deserve update from 3.0.2 ;) https://github.com/bmatzelle/gow/wiki/executables_list
Good coverage. I use it quite often for cache dictionary, it's much simpler API and overall code, than creatng a new class for it. Demo snippet from effbot's site:
def calculate(a, b, c, memo={}):
try:
value = memo[a, b, c] # return already calculated value
except KeyError:
value = heavy_calculation(a, b, c)
memo[a, b, c] = value # update the memo dictionary
return valueYes, but why? Actually, it's No, because python culture aims to use one way to do thing, the least surprising one. In this case it's:
def f(x=None): if x is None: x = []Announcement on google+ and in the appengine group: https://plus.google.com/111042085517496880918/posts/6Vq8soef... https://groups.google.com/d/topic/google-appengine/d11NgSTeK...
Yep, but one would expect Google being able to do better and get it work for lower cost at their scale and level of expertise, which is raising the doubt among developers.
Another option is to test password complexity in javascript on client (ála Google and others), which provides immediate feedback to the user. This is prone to a dictionary attack only if the user uses well known character replacements like 'p@$sw0rd', which pass these tests undetected.
https://github.com/search?q=password+strength https://sun.athnic.net/password-test.html http://www.geekwisdom.com/dyn/passwdmeter http://cafewebmaster.com/check-password-safety-javascript-wh...
Thanks for the frozenset. Yet pickle makes the file 2 times bigger and 20 times slower to parse on my machine:
>python wordlist.py -w wordlist -p wordlist.pkl
>python wordlist.py -T wordlist wordlist.pkl 10 3
2.6.6 (r266:84297, Aug 24 2010, 18:46:32) [MSC v.1500 32 bit (Intel)]
words(wordfile): 142.50 best msec/loop
words_slower(wordfile): 161.00 best msec/loop
words_normalized(wordfile): 295.84 best msec/loop
words_pickled(pickled): 2943.66 best msec/loop
The winner is: with open(wordfile) as wordlist:
return frozenset(wordlist.read().split('\n'))
Source: https://gist.github.com/1059725Wordlist: http://www.freebsd.org/cgi/cvsweb.cgi/src/share/dict/web2?re...
Do you have different results?
right, the space saving harmed readability indeed, thanks
You can also initialize the words in more pythonic way:
with open('/usr/share/dict/words') as wordlist:
words = set(line[:-1] for line in wordlist)
Or, for one time check you can stop reading on match: import sys
lookup = '%s\n' % sys.argv[1]
with open('/usr/share/dict/words') as wordlist:
[ sys.stdout.write('Dictionary password: %s' % lookup) or sys.exit(1) for line in wordlist if line == lookup ]
As for the objective, this checks only exact dictionary matches. In real world, you'd use cracklib to check any dictionary based or weak passwords rather than reinvent the wheel. See http://gdub.wordpress.com/2006/08/26/using-cracklib-to-requi...Disagree strongly. Anyone savvy enough ... has probably no password in his/her gmail at all. Btw, domain reg info can be searched anyway.
Also, if you got a strong and unique password, and do not login from untrusted devices that may be keylogged, you're quite safe already.
[Update - 2:06 GMT] What we know and what is being done.
* It appears that someone who performs audits on our system and had read-only access to our database had their computer compromised. This allowed for someone to pull our database. The site was not compromised with a SQL injection as many are reporting, so in effect the site was not hacked.
* Two months ago we migrated from MD5 hashing to freeBSD MD5 salted hashing. The unsalted user accounts in the wild are ones that haven't been accessed in over 2 months and are considered idle. Once we are back up we will have implemented SHA-512 multi-iteration salted hashing and all users will be required to update to a new strong password.
* We have been working with Google to ensure any gmail accounts associated with Mt.Gox user accounts have been locked and need to be reverified.
* Mt.Gox will continue to be offline as we continue our investigation, at this time we are pushing it to 8:00am GMT.
* When Mt.Gox comes back online, we will be putting all users through a new security measure to authenticate the users. This will be a mix of matching the last IP address that accessed the account, verifying their email address, account name and old password. Users will then be prompted to enter in a new strong password.
* Once Mt.Gox is back online, trades 218869~222470 will be reverted.
https://support.mtgox.com/entries/20208066-huge-bitcoin-sell...
I migrated from Kubuntu to Xubuntu when Lucid came out, it runs greatly on older notebooks for that matter, even Xubuntu Natty today.
While the issues mentioned in the article are valid, it's still so much easier for me to maintain all family (and several friends) pc/laptops around, after I migrated them from Windows to Kubuntu/Xubuntu. The desktops just work and don't break, which is not something you can say about the Windows tamagotchi thing - you need to care about this one, or keep it restricted.
http://mercurial.selenic.com/ ... intro, man, howto, wiki http://devcheatsheet.com/tag/mercurail/ ... some visuals
http://gitref.org ... nice first user overview http://cmurphycode.posterous.com/git-201-slightly-more-advan... ... next one to read http://devcheatsheet.com/tag/git/ ... some visuals
Can confirm that for Prague. I'm using bike mostly, sometimes combinded with metro, but whenever I fallback to public transport I feel grateful for how well it works. It's easy to get anywhere at any time, even at night. Last week it took me 40 mins at 4am to get from my home near the centre to the airport outside of city using bus lines that cross the city in 30mins intervals and meet together at hub stations. On contrary, the bus lines in country were privatized and many useful (but probably not so profitable) lines were cut, and while it got better balanced in time, it's still suboptimal on many places/times and is a living example of where free market actually diverges from being a good public service.
Yes, supernodes are used to negotiate the communication trough NATs, the method's called UDP hole punching: http://www.google.com/search?num=100&hl=en&q=skype+n...
Yep, I saw similar trend pushed from top to a new development dept. in major bank during its first years growth. That said, I kept succesfully ignoring it and forcing my rule: I do my work well and I decide how and when - while reflecting the needs of team and project of course. It worked, mostly thanks to most local heads open mind. Yet, it's needed to push this contra-culture actively, things got much worse there for others since I left.
More on that topic by Pehong Chen / Broadvision: http://www.broadvision.com/en/news.php
"Very rarely is there simply not some kind of existing solution."
Yep, when you talk about known problems. Still often both the problem and solution (which is just another view of problem) lie just outside current scope of people imagination, and are only found by prospective minds when the way is open (other conditions met).
There was not simply some kind of existing solution for Internet 50 years ago.
Yep, the speed does not matter as much as understanding the goal, esp. when resources become limited. And no doubt, India has deeper experience with operating on low resources, than nowadays western world does.
The 60 years old Gandhi paradigm is still reusable with modern tools today, compare e.g. with mobile/Internet impact on village production business.
Greer on Gandhi economical paradigm: "His suggestion, to condense some very subtle thinking into too few words, was that a nation that had a vast labor force but very little money was wasting its time to invest that money in state-of-the-art industrial plants; instead, he suggested, the most effective approach was to equip that vast labor force with tools that would improve their productivity within the existing structures of resource supply, production and distribution.
Instead of replacing India's huge home-based spinning and weaving industries with factories, for example, and throwing millions of spinners and weavers out of work, he argued that the most effective use of India's limited resources was to help those spinners and weavers upgrade their skills, spinning wheels, and looms, so they could produce more cloth at a lower price, continue to support themselves by their labor, and in the process make India self-sufficient in clothing production." - http://silverbearcafe.com/private/02.10/factories.html
Edit: added second paragraph in the citation
@TPB wins auction for site eBay.com, merge is planned: http://news.ycombinator.com/item?id=2395035 http://bit.ly/frcgu8
Nice! Would deserve a github repository and keeping the pypi pakcage up-to-date: http://pypi.python.org/pypi/osh/
From https://groups.google.com/forum/#!topic/html5boilerplate/dNb...:
> This is the first time I've heard of Mobile Boilerplate. Can you provide > some background info? Specifically I am wondering, why desktop/mobile are > separate rather than combined into one download? What is the suggested > implementation of a site with both desktop & mobile versions?
HTML5Boilerplate is the one you should use if you are getting started on websites. It is optimized to work and adapt on mobile browsers.
Mobile HTML5 Boilerplate is optimized for web apps that are explicitly written to have different UX while on devices other than the desktop. * This means they might want to imitate the UI of native applications or be close to it. * They may make heavy use of touch-based UI paradigms and other interactions that are not possible on a desktop browser. * They explictly use media queries and other ways to detect a non-desktop browser and serve an experience that is different.
When I say web apps, I mean websites that are used intensively to accomplish certain tasks (like twitter.com / gmail.com / facebook.com / admin interface of wordpress.com ). These sites are required to take advantage of the space available and help users accomplish their tasks with minimal effort no matter what device.
On the other hand, we do have websites that users visit occasionally because they found it on some friend's email or on reddit which has content but users rarely interact with it (other than just visiting it or at most leaving a comment), in which case html5 boilerplate would be a good template to use. This would be a good option for most sites that are content-rich and require minimal user interaction.
Unfortunately for us, mobile platforms are also creating silos by specifying custom meta tags to use to optimize for their platform. E.g. Apple recommends using apple-touch-icon meta tag to specify things specific to webkit mobile browsers. Nokia has its own. We did not want html5boilerplate to add such cruft to the defaults, but this would be necessary for someone writing an application tailored to take advantage of non-desktop devices. There is already a lot of consistency, but we wish there was more standardization of mobile optimizations.
Please do contribute suggestions for improving the mobile boilerplate here: https://github.com/shichuan/mobile-html5-boilerplate/issues