Shared posts

05 Nov 16:31

The Enduring Myth of the SPARQL Endpoint

by daverog

It surprises me that the Semantic Technology industry still talks with great frequency about the ‘SPARQL Endpoint’ (it’s come up a few times already at SemTech 2013). At best, a SPARQL Endpoint is useful as an ephemeral, unstable method to share your data. At worst, it is wasting the time and energy of providers and consumers of SPARQL endpoints due to the incompatible outcomes of scale and availability.

But before I explain this position, let me outline my understanding of what a SPARQL Endpoint is:

A technical definition:

  • An HTTP URL which accepts a SPARQL query and returns the results
  • Can return a variety of serialisations: Turtle, RDF XML etc

The intention of SPARQL endpoints

  • Give other people and organisations access to your data in a very flexible way
  • Eventually realise the potential of federated SPARQL whereby several SPARQL Endpoints are combined to allow complex queries to be run across a number of datasets
  • They are open for use by a large and varied audience

But what can SPARQL endpoints be used for? They are brilliant for hackdays, prototypes, experiments, toy projects etc. But I don’t think anything ‘real’ could ever be built using one.

There seems to be a cultural acceptance that SPARQL endpoints can be intermittently available, subject to rudimentary DOS attacks and have extremely long response times. This is no foundation for mass adoption of linked data technologies, and it certainly cannot form the fabric of web-based data infrastructure.

I want linked data to gain mainstream popularity. It is a great language for expressing meaningful data and fostering collaboration with data. But to succeed, people need to be able to confidently consume linked data to build apps and services reliably. To build a business on linked data means you need a source of regularly updated and highly available data. This takes investment, by the provider of the data, in highly available, secure and scalable APIs. This is already happening of course, but the SPARQL Endpoint endures.

How do SPARQL endpoints perform?

I thought I’d put my criticisms of SPARQL endpoints to the test, so I tried a few, and here’s what happened…

Note: the queries I have tried are intended to represent an intentional or accidental, rudimentary DOS attack. This is the kind of attack that a robust, open endpoint should be able to protect itself against.

Firstly, only 52% of known SPARQL endpoints were available on http://labs.mondeca.com/sparqlEndpointsStatus/index.html I don’t know how representative that is, but it’s not a good start.

Next, I tried some of the available ones, you’ll have to trust me that I picked these four at random…

(Apologies to the providers of these endpoints, I am not singling you out, I am making a general point).

http://pubmed.bio2rdf.org/sparql

It took 30 seconds for the query editor to load. I ran the query the suggested query, and it hung for around 2 minutes, and then I got

Virtuoso S1T00 Error SR171: Transaction timed out

http://sgd.bio2rdf.org/sparql

It took 30 seconds for the query editor to load. The suggested query ran quickly. I changed it to:

SELECT * WHERE { ?s ?p ?o . }

The results came back quickly, but then the data stopped being streamed back and hung for over 5 minutes, before I stopped waiting.

I then tried:

SELECT * WHERE { ?s ?p ?o . ?a ?b ?c . ?e ?f ?g . }

And got:

Virtuoso 42000 Error The estimated execution time -1308622848 (sec) exceeds the limit of 1000 (sec).

That’s an ugly error message, but at least there is a protection mechanism in-place.

http://sparql.data.southampton.ac.uk

It worked fine for some friendly queries, but then I tried:

SELECT * WHERE { ?s ?p ?o . ?a ?b ?c . ?e ?f ?g . }

and got:

Error: Connection timed out after 30 seconds in ARC2_Reader missing stream in "getFormat" via ARC2_Reader missing stream in "readStream"

http://bnb.data.bl.uk/sparql

I ran this basic query when I started writing the blogpost:

SELECT * WHERE { ?s ?p ?o . }

It is still failing to load around 10 minutes later.

Update: it was pointed out that the above are all research projects, so I tried data.nature.com/query and http://metis.bbyopen.com/sparql?query= too, and got similar results – connection reset and 60 second+ response times.

The incompatible aims of scale and availability

Whilst “premature optimisation is the root of all evil”, it would be reckless to build a software system that was fundamentally incapable of scaling. A SPARQL Endpoint is just such a system.

SPARQL is a rich and expressive querying language, and like most querying languages, it is straightforward to write highly inefficient queries. Various SPARQL engines have mechanisms for protecting against inefficient queries: timeouts, limits to the number of triples returned, but most of these are blunt tools. Applying them gives the user a highly inconsistent experience. A SPARQL endpoint can also take no advantage of returning previously computed results based on knowledge about the data update frequency, or how out-of-date it is acceptable for the data to be.

So if a SPARQL endpoint is ever intended to be successful, and have many (1000+) frequent consumers of data, and remain open to any SPARQL query, it is my opinion that it would be impossible to also have acceptable response times (< 500ms) and reasonable availability (99.99%).

There is a reason there are no ‘SQL Endpoints’.

What are the alternatives?

The main alternative to me is obvious: Open RESTful APIs:

  • Open APIs can provide access to data in only the ways that will scale
  • Open APIs can make generous use of caches to reduce the number of queries being run
  • Open APIs can make use of creative additional ways to combine data from various sources, and hide this complexity from its users
  • Open APIs can continue to provide legacy data structures even if the underlying data has changed. This is important to maintaining APIs over long periods of time.

A second alternative is data dumps. These have limited use, because the data is often not useful until is has undergone processing or ingest into a SPARQL engine.

A third alternative is a self-provisioned SPARQL endpoint. Cloud technologies are making this approach more viable. It would allow a potential data consumer to ‘spin-up’ their own, personal SPARQL endpoint which would be pre-loaded with a periodically updated RDF data dump. This approach allows the provider to massively reduce the cost of supplying and maintaining the endpoint, and a consumer takes responsibility for the stability of their own SPARQL endpoint, without affecting any other consumers.

18 Oct 11:36

So, I’m the kitten nowadays…

by merenlin

Writing the paper with the 1st year PhD student :)

researchinprogress:

Writing paper with a 1st year phd student
by Jilles

15 Jun 21:23

Пока НБУ думает, как бы взять под контроль прогресс...

by nikolas_ sharp

Японцы тем временем изобретают очередные чудеса. Роботизированная подземная парковка для велосипедов за 19$/месяц.

31 May 21:44

Регистратор Ukrnames.com включен в рабочую группу ICANN

by Zezya

Украинский ICANN-аккредитованный регистратор Ukrnames.com (ООО "Центр интернет-имен Украины") включен в рабочую группу ICANN по разработке политик сервиса WHOIS, сообщает сайт компании.

Основная цель работы рабочей группы - создание согласованной основы для будущего аккредитационного соглашения. Это те принципы и требования к точности WHOIS, по которым будут действовать ICANN-аккредитованные регистраторы в ближайшие годы.

WHOIS - это одна из наиболее важных служб с точки зрения пользователей доменов. Службы WHOIS позволяют получить информацию о владельце домена, состоянии домена и другие данные. Необходимость поддержания данных WHOIS в актуальном состоянии является одним из основных требований к владельцу домена, и зачастую может быть причиной в отказе обслуживания домена.

В рабочую группу входят специалисты от 45 крупнейших ICANN-аккредитованных регистраторов из 12 стран мира. В данной рабочей группе, Ukrnames является единственным представителем из Украины.

Хоть кто-то от имени нашей страны делает реально полезное дело в области мирового доменного пространства.

28 May 18:19

Як вгадати стать людини по її ЄДРПОУ?

by bunyk

Я потрохи ходжу на співбесіди, переписуюсь з HR-менеджерами, осягаю таке кунг-фу як протокол дескрипторів та деякі інші речі (ви наприклад знали що в Python є спеціальний метод “правий лівий зсув“? :) ). А ще звісно пакую сумки, але поміж тим вирішив опублікувати ще одну чернетку яку створив був коли розбирався в тому що таке ЄДРПОУ і чим воно відрізняється від ідентифікаційного коду. :)

То як же вгадати стать? Тут застосовується нескладна магія чисел. Виявляється, що якщо передостання цифра вашого ідентифікаційного коду (якщо ви фізична особа там має бути десять цифр), парна, значить ви жінка.

Що ще цікавіше, за ЄДРПОУ можна вгадати дату народження. Для цього треба взяти п’ять перших цифр, і вони покажуть яким за номером днем, якщо рахувати від 1 січня 1900 був день вашого народження. Тому, пані які приховують свій вік також повинні приховувати й свій ідентифікаційний код. А всі хто народились в XIX столітті чи раніше – взагалі мають від’ємний ідентифікаційний код. :)

Вручну рахувати звісно трохи заморочливо, я для розваги був це собі заскриптував:

from datetime import date, timedelta

def print_info(code):
    code = str(code)
    if len(code) != 10:
        print('Ідентифікаційний номер складається з десяти цифр!')
        return

    birth = date(1899, 12, 31) + timedelta(days=int(code[:5]))
    print('Дата народження: %s' % birth.isoformat())

    sex = 'жіноча' if (int(code[8]) % 2 == 0) else 'чоловіча'
    print('Стать: %s' % sex)


if __name__=='__main__':
    print_info(3308506414)

За матеріалами вікіпедії.


Filed under: Всяке Tagged: цікавий факт, Python
21 May 20:16

Шевченко, Франко і Гоголь на футболках від ТUR

by Сергій Пішковцій

Футболки від TUR

Гоголь з татуюваннями, Франко з люлькою і брутальний Шевченко – такими побачив відомих українців львівський ілюстратор Михайло Присташ. Ідея ж перенести стильні образи на футболки виникла у Олексія Малицького, який уже мав подібний досвід з брендом Sammy Icon. Він давно думав про запуск власної лінії одягу, але досі не вистачало натхнення. Поштовхом до створення бренду TUR стали роботи Михайла. Хлопці переконані, що образи стильних українців носитимуть сильні духом шукачі пригод. Їхній одяг для тих, хто не хоче виділятися у натовпі здалека. Це речі для людей, у яких є життєва позиція.

Футболки TUR

Футболки TUR

Тур – це витривала тварина, яка витримувала екстремальні температури і відзначалась силою, швидкістю та своєрідним норовом. Жили в Українських Карпатах до XVII століття. Один із основних посилів бренду – притягувати щастя і удачу. Тому логотип виконаний у вигляді рогів тура. Цей елемент символізує також і підкову. Більше того, TUR заснували 12.12.2012, що, на думку хлопців, якнайкраще впливатиме на тих, хто носитиме одяг від бренду TUR.

Футболки TUR

oleksiy

Олексій Малицький
засновник бренду Sammy Icon, випускник Києво-Могилянської академії. Займається створеннням аксесуарів уже два роки, але завжди мріяв створити власний бренд одягу

misha

Михайло Присташ
молодий львівський ілюстратор


tur

Придбати футболки можна в магазині Joyfactory.

ВКонтакті / Facebook

19 May 07:03

Firefox Button Height Fix

by David Walsh

One problem I’ve seen on occasion is that button heights in Firefox are a few pixels larger than in other browsers.  This can be a nightmare when trying to unify the size of buttons with an A elements, as we found out when implementing a new feature on MDN:

Firefox Button Bug

The middle element is an INPUT and the others are your basic A element.  You can see that the INPUT element is just slightly bigger — enough that it annoys anyone with a sharp eye.  This StackOverflow post mentions a solution that includes ::-moz-focus-inner:

input::-moz-focus-inner { 
	border: 0; 
	padding: 0; 
}

This snippet helps but doesn’t completely fix the problem — the INPUT is still just a tad too big.  The Stackoverflow post mentions box-sizing but that doesn’t help.  After trying a few different solutions, I finally found one that works:

input::-moz-focus-inner { 
	border: 0; 
	padding: 0; 
	margin-top:-2px; 
	margin-bottom: -2px; 
}

Setting negative margins within the ::-moz-focus-inner brings the buttons down to correct height, and as a bonus, the text sits the proper position:

Firefox Button Bug Fix

The ultimate solution is a bit vomit-inducing, and you may need to adjust the negative margins to your specific use case, but the solution works and doesn’t cause problems for other browsers!

Read the full article at: Firefox Button Height Fix

Treehouse

Sencha Conference

15 Apr 12:34

Есть минутка для искусства?

by Suv
Амит Суд, Институт культуры Google

Сегодня мы отмечаем  Всемирный день искусства и два года с момента запуска Арт-проекта Google. Для нас это отличная возможность не только поблагодарить всех наших партнеров, но и поговорить о том, как люди взаимодействуют с искусством в Интернете.

Интернет позволяет «оживлять» произведения искусства. Самым популярным произведением искусства у пользователей Арт-проекта стала картина Ван Гога «Звездная ночь». За последние 6 месяцев пользователи чаще всего просматривали ее, а также изучали мельчайшие детали и едва заметные глазу мазки на холсте в режиме максимального приближения. Конечно, ничто не может сравниться со знакомством с картиной в настоящем музее. Однако возможность рассмотреть произведения искусства в деталях вдохновляет пользователей на более длительное их изучение. Так, посетители сайта Арт-проекта Google в среднем рассматривают каждое произведение более одной минуты, в то время как в обычном музее у них уходит на это менее 20 секунд (по данным нескольких исследований).

«Звездную ночь» чаще других добавляют в виртуальные частные галереи, которые пользователи самостоятельно создают на сайте Арт-проекта. На нашей платформе представлено более 40 тысяч картин, и некоторые из них остаются постоянными фаворитами у пользователей. Другими самыми популярными произведениями (по частоте добавлений в частные галереи) стали:



«Звездная ночь» на сайте Арт-проекта Google

Галереи пользователей оказались даже более популярны, чем отдельные картины и мастера. На сегодняшний день в рамках проекта создано 360 тыс. галерей, к 14 тыс. из них был открыт общий доступ. Мы попросили представителей музеев-партнеров выступить в роли кураторов собственных пользовательских галерей, чтобы отметить Всемирный день искусства. Здесь же вы можете изучить работы, которые выбрали 8 директоров музеев.

Конечно, картины классиков вызывают наибольший интерес у пользователей. Однако мы заметили, что все больше людей интересуется и современным искусством. Так Дали и Климт стали одними из самых часто запрашиваемых художников. Благодаря Интернету у пользователей появилась возможность знакомиться с различными жанрами искусства сразу на одной площадке. Арт-проект объединил более 30 разных видов искусства - это и написанные маслом картины, и более 5000 других объектов, среди которых шелковые ткани, скульптуры и предметы мебели. В мире существует не так много мест, где на одной площадке представлены произведения Боттичелли и бразильское уличное граффити.

Многие музеи - партнеры Арт-проекта, которые внесли свой вклад в коллекцию произведений искусства, также решили добавить панорамы интерьеров собственных зданий в сервис Google Просмотр улиц. В среднем посетители проводят около 2 минут, изучая интерьеры музеев и рассматривая картины с монитора. Самым популярным местом для виртуальных визитов стал Белый дом. Большинство из нас не смогут попасть внутрь Белого дома в реальной жизни, но благодаря Интернету у нас есть редкая возможность виртуально заглянуть внутрь здания, чтобы, в том числе, познакомиться с большой коллекцией произведений искусства.

У нас больше 200 музеев-партнеров в 43 странах, и мы продолжаем делать все возможное, чтобы искусство стало еще более доступным для миллионов профессионалов, студентов, новичков и просто любителей по всему миру. В продолжение наших культурных инициатив сегодня в 21:00 по московскому времени состоится Беседа об искусстве на странице Арт-проекта в Google+. Представители Музея Метрополитен в Нью-Йорке обсудят вопросы использования мультимедийных средств в области искусства. Чтобы посетить лекцию и послушать экспертов, не выходя из дома, необходимо зарегистрироваться по ссылке.

11 Apr 11:51

Free Python Books

by Deepak

Found a great collection of Python books available for free. Sharing it with readers of Therefore Systems. Screenshot below is just a small sample.

Free Python Books

Link

11 Apr 11:37

Міфи про закордон: що українці думають про Європу

by Сергій Пішковцій

zakordon

З того часу, як ми опублікували наші карти стереотипів – європейських та українських – нас не покидало відчуття того, що ця тема досі не досліджена повністю. Бо у кожного з нас є свої власні переконання, уявлення і стереотипи щодо життя в тому чи іншому місці. Зважаючи на те, що 90% українців і досі можуть боготворити країни Європи, ми вирішили розвіяти популярні міфи про те, який вигляд має справжнє життя закордоном. І спитали про це у людей, що провели там вже достатньо часу.


eugene

Євген Бритавський
мандрівник, побував більш ніж в 10 країнах Європи

Українці думають, що в Європі люди набагато більше заробляють. Але орендна плата за житло та ціни на транспорт напряму пов’язані з середньою зарплатою у країні, тож так, у гривневому еківаленті заробляють більше, але й витрати відповідно більші.

Українці вважають, що у європейських країнах розповсюджений швидкий та безкоштовний wi-fi. Насправді досить рідко зустрічаються таблички Free WiFi, частіше доводиться купувати каву та отримувати з нею пароль до мережі у кафе.

До речі про каву – багато моїх знайомих вірять у каву по-віденськи, по-ірландськи, взагалі у вкрай добру каву, зварену будь-де у західній Європі. Справді неперевершена кава зустрічалася мені лише в Італії.

А ще українці кажуть, що німкені некрасиві, а всі красуні-блондинки лише десь у Швеції, а гарні брюнетки тільки у Іспанії. Скільки не подорожую, не помічаю суттєвої різниці у співвідношеннях зовнішності.

Ще вважається, що у Європі більш культурна та охайна молодь. Це недалеко від правди до вечора п’ятниці, а потім що українські, що італійські чи голандські студенти – галасують, п’ють та смітять на вулицях однаково.

taras1

Тарас Семенюк
студент, 4 роки живе у Великобританії

Українці думають, що на Заході чистіше. Наприклад, в Англії цінують навколишнє середовище, але побачити сміття на узбіччях не буде важко.

Чимало українців вважають, що диплом європейського зразка, виданий українським університетом, буде визнаний за кордоном. Престижність “могилянки” чи “поплавка” за кордоном рівна нулю.

Побутує думка щодо заможності іноземців. В багатьох людях з-за кордону українці (не кажу, що всі) вбачають мільйонерів. За кордоном високий рівень економічного розвитку, але не такий, як це здається на перший погляд.

vova

Володимир Купріянов
аналітик даних, 3 роки живе у Великобританії

Поширений стереотип – це те, що за кордоном ніхто не знає, де Україна і що воно таке. Насправді всі знають де це, знають Кличків, Андрія Шевченка, Тимошенко, Динамо і Шахтар.

Ще один міф: за кордоном телекомунікації розвинені набагато краще, ніж в Україні. Це неправда, інтернет в українських містах набагато кращий та швидший ніж в більшості країн Європи.

За кордоном люди не знають ціни грошам і не розуміють що таке “шара” – вважає чимало українців. Але ні, європейці розуміють, що таке шара, і ще й як. І економлять на чому тільки можна і шукають халяви всюди.

Українці думають, що за кордоном всім живеться краще. Але добре живеться тут далеко не всім, бо існує купа своїх проблем – бідність, бездомність, безробіття і багато іншого.

Популярний міф: “в Європі все чисто і цивілізовано, і ніхто не смітить”. Там живуть такі ж люди, як і в нас, що смітять, і плюють, і недопалки кидають прямо на тротуар.

Ну і останнє, що хотілось би згадати – це стереотип про те, що за кордоном можна не працювати і прожити на допомогу по безрозбіттю. Ага, спробуй “проживи” – не все так просто і допомога по безробіттю дозволяє хіба лиш вижити, але не жити повноцінно.

oles

Олесь Данилович
студент, 12 років живе у Швейцарії

Деякі українці вважають, що на Заході всі мають особисту прислугу, яка допомагає по господарству. Особисто я не знаю нікого, хто б мав прислугу. Дехто наймає прибиральницю на годину в тиждень, але більшість прибирають власноруч.

“На Заході всі багаті” – ще один вкрай поширений міф. Звичайно, зарплати тут вищі, але ціни, особливо в Женеві, дуже кусючі. Оренда житла в гуртожитку починається приблизно від 600 франків на місяць (5200 гривень).

Не раз стикався з хибним уявленням про те, що в Європі безпечно і немає криміналу. Стільки гопників, як в Женеві, я у Львові, чи будь-де в Україні, я ніколи не бачив. У сусідній Франції ситуація ще гірша. Звичайно, міліція працює тут дуже оперативно і професійно, але сідати в громадський транспорт о 5-ій ранку інколи страшно.

Українці вважають, що на Заході всі гарно вбрані. Значною мірою європейці у повсякденному житті вдягаються невибагливо, навіть у Парижі, який вважають світовою столицею моди. Про студентів можна навіть не згадувати: вони інколи приходять на пари в піжамах. Тим не менш, на офіційні події більшість людей все ж дотримуються дрес-коду.

sergey

Сергій Ковальов
програміст, 3 роки живе у Данії

Ще в дитинстві я чув байку про те, що в Європі доріжки асфальтують там, де люди вже протоптали стежку. Насправді ці доріжки рідко асфальтують взагалі. Використовують інші матеріали. І роблять це, звісно, як запланували, а не там, де “протоптали” люди.

Вважається, що в будь-якому місті Європи чимало громадських туалетів, тому люди не справляють потребу будь-де. Насправді громадських туалетів так мало, як і в нас. І особливо результати цієї відсутності стають помітнішими на стінах будинків у ніч з п’ятниці на суботу.

Ще одна неоднозначна ситуація – з уявленням про тотальну чистоту та наявність смітників. Справді, в місцях масового відпочинку є достатньо урн: на пляжах, стоянках вздовж доріг. Але в міських кварталах Європи смітники зустрічаються не частіше, ніж у нас. Можливо, це залежить від конкретного міста. Але я добре пам’ятаю, як довго не міг знайти, куди можна викинути паперовий стаканчик в центрі Парижу. Ну а чисто тому, що прибирають, а не тому, що не смітять.

А з якими міфами зустрічались ви у своїх мандрівках країнами світу? Чекаємо на ваші враження та історії в коментарях.

10 Apr 12:33

Відео дня: Один день з життя взуттєвого майстра

by Сергій Пішковцій

Один день з життя взуттєвого майстра

Ми вже показували вам відео про те, як працюють винороби. А чи задумувались ви коли-небудь про те, як виготовляється взуття? Справжнє, ручної роботи, зроблене дбайливими руками взуттєвих майстрів? Сьогоднішнє відео показує процес роботи над Prada Handmade Collection.

03 Apr 19:16

Lessons I've Learned in a Year Working on My Own

by Jonnie Hallman
Click here to read Lessons I've Learned in a Year Working on My Own Early last year, I started renting a desk at Studiomates while working remotely for Adobe. With the majority of mates either running their own companies or freelancing, I felt the itch to follow suit. This feeling has been with me ever since I first started working for someone else. I knew that one day it would be too much to bear. More »
03 Apr 01:39

На краю прірви: руфер з Києва

by Сергій Пішковцій

На краю прірви: руфер з Києва

Його адреналінові відео зібрали на Youtube майже мільйон переглядів, а від фотографій і досі йдуть мурашки по шкірі. Його справжнє ім’я приховане під ніком Mustang Wanted, а живе він в столиці України – Києві.

Захоплення дахами та складними висотами в хлопця було ще з дитинства, а от медійна популярність прийшла лише нещодавно. “Спочатку один з відеороликів набрав більше 100 тис переглядів, написав один сайт, інший, – і пішло-поїхало”, – каже Mustang, і одразу додає, що не ставив перед собою за мету стати зіркою інтернету. За його словами, вся популярність наразі вимірюється тисячами френдів на ВКонтакті, кількома телесюжетами та впізаваністю на вулицях.

Хлопець розуміє, що бути руфером вкрай небезпечно, проте йому це подобається: планів зупинитись поки немає. Навіть не зважаючи на те, що правоохоронці уже чимало разів “знімали” його з дахів і конструкцій, а перехожі думали, що хлопець та його друзі – самогубці. Тим, хто хоче змінити себе, він радить “жити нормально”: “Вирішив, що ти класний хлопець – і половина справи зроблена. Я б радив жити нормально. Розвиватися фізично і духовно. Тоді і в голові буде порядок. Варто більше думати, а не боятись”.

На краю прірви: руфер з Києва На краю прірви: руфер з Києва На краю прірви: руфер з Києва На краю прірви: руфер з Києва На краю прірви: руфер з Києва На краю прірви: руфер з Києва На краю прірви: руфер з Києва На краю прірви: руфер з Києва На краю прірви: руфер з Києва На краю прірви: руфер з Києва На краю прірви: руфер з Києва На краю прірви: руфер з Києва На краю прірви: руфер з Києва На краю прірви: руфер з Києва На краю прірви: руфер з Києва На краю прірви: руфер з Києва

Фото з офіційного сайту Mustang-wanted.com. Не намагайтесь повторити

30 Mar 08:03

The Old Reader is a Capable Google Reader Replacement

by Alan Buckingham

By now you likely know that Google has made its popular Reader app an upcoming victim in the company’s infamous Spring Cleaning massacre of services. The news spread around the internet like wildfire and generated quite a bit of bad publicity and hard feelings against the search giant.

It also generated a ton of new traffic that suddenly began swamping alternative apps such as Feedly, which had to add ten-times the bandwidth and additional servers to keep up with its new-found popularity.

Another service, The Old Reader, has also been under heavy pressure since the Google announcement. In fact, as of this writing, there is a wait time of almost one week to import your OPML file into the service. In fact, when I first signed up, I received the following message on my screen:

I finally got a in, though, so let’s take a look at it together and see what The Old Reader brings to the RSS reader market.

Get Your Files Out of Reader

Before you get to join this party though, you will need to export your OPML file from the soon-to-be-defunct Google Reader. Head over to Google Takeout and grab your Reader file.

To do so, click on “Choose Services” and then click on Reader and choose “Create Archive”. The file is rather small, so the download will be quick — my hundreds of feeds added up to only a 5.1 MB file. It is actually an XML file, but no worries since that works with OPML.

Now head over to The Old Reader and tap on “Import” at the top right of the screen. Bear in mind that you first need to unzip the file before proceeding with this. Navigate to the unzipped archive file and drill down through the folders to find the file named “Subscriptions” and click it to add to the upload queue.

Now can either begin twiddling your thumbs and waiting, or you can begin trying out The Old Reader right away. The website tells us that:

“By the way, even if you have uploaded your OPML file and are now waiting for it to be processed, you can still subscribe to your favorite feeds manually and start reading. There will be no duplicate feeds when your OPML file finally gets imported”.

How much impact did the Reader shutdown announcement have? The Old Reader points out that “our user base recently grew 15x (and counting), and this changed everything. In a week we have gone from a personal project ran by three friends to a personal project ran by three friends with about 150,000 users”.

Adding Feeds

The Old Reader is based on a previous version of Google Reader — hence the name. For that reason, you should feel right at home here as a refugee from Google Land.

There is a large “Add a Subscription” button at the top of the left side column. Once you find a feed that you wish to add then copy the URL or RSS address and click on this button, then paste in the address and click the “Plus” sign to the right side of the box.

The first difference you will notice is that The Old Reader displays the last 20 articles as “unread” when a new feed is added. This is twice as many as the most recent iteration of Google Reader.

The Home Screen

The Home button, which is at the top of the left column just under the subscription option, provides an overview of your feed as well as bit of other useful information.

Front and center is the feed data — you will see a display of the number of unread files, as well as a snapshot of some of the most recently added stories. The right side provides some tips and tricks, such as use “j” and “k” keyboard shortcuts to navigate posts. “o” opens the post in a new window. Below those tips are links to browser extensions for Chrome and Safari, if you so choose to want to use the service in that manner.

Sharing and More

Like the program it is modeled after, The Old Reader has sharing options at the bottom of each post. It displays options for Email, Stumble Upon, Digg and Delicious, though three of those may be a bit outdated these days. There is also a Share button, a Mark as Read button and a Star option.

Corresponding options exist in the left column, where you can view the stories you have shared or starred, as well as check out what items are trending, based on what other users have looking at the most.

Looking for Friends?

You will notice a “Find Friends” option near the top right of the screen. Click this and you will be prompted to either do a search for a name your are looking for or log in using your Google account. The latter will scan you Gmail contact looking for matches with others who have registered to use The Old Reader. You can then click “Follow” for any whom you wish. Those you follow will appear in the left column and you can click on each to view what he or she has shared.

What is Lacking?

I honestly could find only one thing missing that stood out to me. Google Reader has an option to create categories and its something I use quite a bit — science, sports, tech, etc. It also has a “Feed Settings” button that allows me to add new feeds to my created categories. This is an option I could find nowhere in The Old Reader, and it is something I will dearly miss.

What is Good?

It has a very Reader-like interface, meaning new users will not be lost when starting out. It also has options for sharing, saving and changing the view from complete stories to simple headlines, which makes quick scanning much easier.

In the end, the good outweighs the bad and it is certainly a finalist in my quest to land on an alternative before that July 1 execution date rolls around.  However, I am not yet done looking, so there may be others to make this final cut.

27 Mar 09:11

[tutsplus.com] Hands-On: Presentation Slides With Backbone [2013, ENG] [1.11 GB]

by bitrain
27 Mar 09:11

ASP.NET MVC 4 Recipes

by Wow!

ASP.NET MVC 4 Recipes

Book Description

ASP.NET MVC 4 Recipes is a practical guide for developers creating modern web applications, cutting through the complexities of ASP.NET, jQuery, Knockout.js and HTML 5 to provide straightforward solutions to common web development problems using proven methods based on best practices. The problem-solution approach gets you in, out, and back to work quickly while deepening your understanding of the underlying platform and how to develop with it.

Author John Ciliberti guides you through the framework and development tools, presenting typical challenges, along with code solutions and clear, concise explanations, to accelerate application development. Inside you will find recipes dealing with streamlined syntax, full control over HTML, a simple API for creating RESTful web services, writing support for test driven development, and more. Solve problems immediately by pasting in code from the recipes, or put multiple recipe solutions together to overcome challenging development obstacles.

Dive head first into ASP.NET MVC web development with ASP.NET MVC 4 Recipes.

What you’ll learn
Inside find recipes that cover:

  • automating testing and deployment of your application using Visual Studio 2012 and Team Foundation Server
  • designing and developing your application for Internet scale
  • deploying to the cloud, working with Big Data and adding resiliency to your application’s components
  • migrating a project from ASP.NET web forms to the MVC 4 including recipes for converting DataGrids, Forms, Web Parts, Master Pages and navigation controls
  • Client side data binding and templating  techniques using Web API, Knockout.js and jQuery
  • using the Web API to design web services that can be consumed by mobile devices and tablets running Android, iOS, and Windows 8

Who this book is for
This book is a problem-solution guide for web developers looking for a better way to build a modern web application on the Microsoft platform.

There are several types of developers that would find this material useful:

  • veteran ASP.NET Web Forms developers who wish to update their skillset to include ASP.NET MVC
  • Project teams who wish to modernize an existing application to allow it to take advantage of MVC 4, .NET 4.5, and Windows Azure
  • Novice web developers who are looking to expand their skill set by learning the Microsoft web development stack

Table of Contents
Chapter 1. The Need for Modern Web Applications
Chapter 2. Understanding ASP.NET MVC
Chapter 3. Setting Up Your Environment
Chapter 4. Visual Studio 2012 Overview
Chapter 5. Getting the Most from the Built-in Templates
Chapter 6. Architecting Applications with ASP.NET MVC
Chapter 7. Solution Design
Chapter 8. Asynchronous Programming with ASP.NET MVC
Chapter 9. Test-Driven Development with ASP.NET MVC 4
Chapter 10. Moving From Web Forms to ASP.NET MVC
Chapter 11. Creating Modern User Experiences Using jQuery, Knockout.js, and Web API
Chapter 12. Mobile, Social, and Cloud Technologies

Book Details

  • Paperback: 632 pages
  • Publisher: Apress (February 2013)
  • Language: English
  • ISBN-10: 1430247738
  • ISBN-13: 978-1430247739
Note: There is a file embedded within this post, please visit this post to download the file.

Related Books

The post ASP.NET MVC 4 Recipes appeared first on Wow! eBook.

21 Mar 21:14

Big Book of Apple Hacks

by Wow!

Big Book of Apple Hacks

Book Description

Bigger in size, longer in length, broader in scope, and even more useful than our original Mac OS X Hacks, the new Big Book of Apple Hacks offers a grab bag of tips, tricks and hacks to get the most out of Mac OS X Leopard, as well as the new line of iPods, iPhone, and Apple TV.

With 125 entirely new hacks presented in step-by-step fashion, this practical book is for serious Apple computer and gadget users who really want to take control of these systems. Many of the hacks take you under the hood and show you how to tweak system preferences, alter or add keyboard shortcuts, mount drives and devices, and generally do things with your operating system and gadgets that Apple doesn’t expect you to do. The Big Book of Apple Hacks gives you:

  • Hacks for both Mac OS X Leopard and Tiger, their related applications, and the hardware they run on or connect to
  • Expanded tutorials and lots of background material, including informative sidebars
  • “Quick Hacks” for tweaking system and gadget settings in minutes
  • Full-blown hacks for adjusting Mac OS X applications such as Mail, Safari, iCal, Front Row, or the iLife suite
  • Plenty of hacks and tips for the Mac mini, the MacBook laptops, and new Intel desktops
  • Tricks for running Windows on the Mac, under emulation in Parallels or as a standalone OS with Bootcamp

The Big Book of Apple Hacks is not only perfect for Mac fans and power users, but also for recent — and aspiring — “switchers” new to the Apple experience. Hacks are arranged by topic for quick and easy lookup, and each one stands on its own so you can jump around and tweak whatever system or gadget strikes your fancy. Pick up this book and take control of Mac OS X and your favorite Apple gadget today!

Table of Contents
Chapter 1. Before You Hack
Chapter 2. Hacks for the Net
Chapter 3. Hacking Mac OS X
Chapter 4. Command-Line Fun
Chapter 5. Customizing the OS X Look and Feel
Chapter 6. Network and Security Hacks
Chapter 7. Hacking the iPod
Chapter 8. Maximize Your Mac with Multiple Operating Systems
Chapter 9. Hacking the iLife
Chapter 10. Hack the Apple TV
Chapter 11. Hack the Latest and Greatest: Leopard
Chapter 12. Hack the iPhone
Chapter 13. Hacks for Laps
Chapter 14. Multimedia Hacks
Chapter 15. Hack Some Hardware

Book Details

  • Paperback: 640 pages
  • Publisher: O’Reilly Media (April 2008)
  • Language: English
  • ISBN-10: 0596529821
  • ISBN-13: 978-0596529826
Note: There is a file embedded within this post, please visit this post to download the file.

Related Books

The post Big Book of Apple Hacks appeared first on Wow! eBook.

21 Mar 21:14

Windows 8 Hacks

by Wow!

Windows 8 Hacks

Book Description

Windows 8 is quite different than previous Microsoft operating systems, but it’s still eminently hackable. With this book, you’ll learn how to make a variety of modifications, from speeding up boot time and disabling the Lock screen to hacking native apps and running Windows 8 on a Mac. And that’s just the beginning. You’ll find more than 100 standalone hacks on performance, multimedia, networking, the cloud, security, email, hardware, and more. Not only will you learn how to use each hack, you’ll also discover why it works.

  • Add folders and other objects to the Start screen
  • Run other Windows versions inside Windows 8
  • Juice up performance and track down bottlenecks
  • Use the SkyDrive cloud service to sync your files everywhere
  • Speed up web browsing and use other PCs on your home network
  • Secure portable storage and set up a virtual private network
  • Hack Windows 8 Mail and services such as Outlook
  • Combine storage from different devices into one big virtual disk
  • Take control of Window 8 setting with the Registry

Table of Contents
Chapter 1. Setup and Startup Hacks
Chapter 2. Hacking the Start Screen, the Windows 8 Interface, and Apps
Chapter 3. Hacking the Desktop
Chapter 4. Productivity and System Performance Hacks
Chapter 5. Cloud and Social Networking Hacks
Chapter 6. Music, Media, and Video
Chapter 7. Networking, the Web, Wireless, and the Internet
Chapter 8. Security
Chapter 9. Email
Chapter 10. Hardware
Chapter 11. The Registry and Group Policy Editor

Book Details

  • Paperback: 422 pages
  • Publisher: O’Reilly Media (November 2012)
  • Language: English
  • ISBN-10: 1449325750
  • ISBN-13: 978-1449325756
Note: There is a file embedded within this post, please visit this post to download the file.

Related Books

The post Windows 8 Hacks appeared first on Wow! eBook.

15 Mar 10:02

3D Free Social Media Icon Buttons

by TimothyBlake


3dsocialmediabuttons 3D Free Social Media Icon Buttons

Not to blow our own trumpets, but this is an awesome icon set of some pretty sweet 3D social media buttons. This is certainly one of our personal favourite design resources. The icon set includes 12 of the most popular social media websites, by popular demand we have included a LinkedIn icon, which readers have frequently asked for in the past icon sets.

License Details

The icon set can be used within commercial and non-commercial design projects. The icon set CAN NOT be redistributed on any other website, without permission from the Creative Nerds team. Creative Nerds have created this icon set, and have full ownership.

 

If you have any questions regarding license details use the contact us page, in order to get in touch, or comment below.

Preview

3dsocialmediaiconbuttons 3D Free Social Media Icon Buttons

downloadbutton 3D Free Social Media Icon Buttons


premium photoshop brush section 3D Free Social Media Icon Buttons

19 Oct 21:59

Сменил xubuntu на arch linux

archlinux_logo.pngArch linux будет третьим моим linux-дистрибутивом на десктопе, а все начиналось в далеком 2004, когда мне предложили писать на Qt и я решил поставить Red Hat 8.0 (до сих пор в загашнике валяются три cd-болванки) с KDE 3 (ностальгирую). В 2008 решил попробовать ubuntu и заказал диск с Hardy Heron, 8.04 (услуга доставки дисков shipit от canonical тогда еще работала).

Почему выбрал арч? Вот несколько причин:

  1. Облегченность. Простота настройки. Расширение кругозора. Мне понравился подход используемый для распространения arch - базовый образ занимает 390 МБ и устанавливается за 10 минут. Дальше обновляешься до актуальной версии и доставляешь нужные только тебе пакеты. Например в моей xubuntu 11.10 было около 1900 пакетов, часть из которых мне не нужны и висели багажом, сейчас в арче 842 пакета. Также удобно что основные настройки (демоны, модули, сеть, локаль, временная зона) настраивается в одном текстовом файле. В общем рай для тех, кому нравится знать, что у него 'под капотом'.

  2. Wiki. Вики содержит почти всю (если не всю) информацию про дистрибутив, начиная с установки, заканчивая нюансами настройки видеокарт, тачпадов и возможных отклонений при разных конфигурациях. Раньше, что бы решить какую-либо проблему для ubuntu или centos приходилось рыскать по разным блогам. Сейчас же достаточно зайти на вики и скорее всего там есть решение. Также вики постоянно обновляется и за всеми новостями можно следить в одном месте, удобно. Пытался я как-то такое найти для ubuntu - безрезультатно, на форуме мой топик остался без должного внимания.

  3. AUR. AUR позволяет собирать пакеты отсутствующие в основных репозитариях. Чаще всего в ауре можно встретить самые свежие версии из git, hg, svn, bzr репозитариев или модификации пакетов с какими-то рюшками от других пользователей. Раньше что-бы найти новое приложение, которого нет в репозитариях ubuntu, приходилось гуглить и находить ppa, сейчас достаточно поискать в AUR и выбрать желаемый пакет. Недавно хотел поставить последнюю стабильную версию GIMP 2.7.2, не все так просто оказалось, надо было вручную разрешать зависимости, устанавливать последние версии библиотек из git-репозитария. В арче достаточно найти нужную версию в ауре и подтвердить установку нужных зависимостей.

  4. Rolling release model. Это означает, что нету обновлений дистрибутива с некоторой периодичность (например, как у ubuntu раз в шесть месяцев), а обновленные пакеты приезжают по мере своего обновления. Если что-то сломается то всегда можно откатится на предыдущую версию, для для этого есть несколько вариантов. У меня за два месяца использования такое было только раз: на одной из машин отвалился wifi c ядром 3.3.1, пришлось откатится на 3.2 и добавить пакет в игнор, с новым ядром 3.3.2 все работает как и полагается. Еще один позитив - не надо пере устанавливать систему при неудачном апгрейде. Я застал 8 релизов ubuntu, три прошли с неработоспособной системой после обновлений, как следствие - пере установка рутового раздела и установка нужных приложений с нуля.

  5. Python3. В арче, начиная с конца 2010 года по умолчанию установлен python3. Это подстегнуло меня более вдумчиво прочитать новшества в третей версии, изменения в основных ветках смотри по ссылкам 3.0, 3.1, 3.2. Переезд используемых скриптов не занял много времени, консольная утилита 2to3 отлично справляется со своим предназначением. (Про то, что в ubuntu 12.04 уже будет python3 я знаю).

  6. Производительность. Местами система стала отзывчевей и время первой загрузки стало заметно быстрее.

  7. Шрифты. Шрифты из коробки стали приятнее чем были в xubuntu. Как я только не колдовал с fonts.conf - похожего эффекта мне не удалось добиться под ubuntu. Также в chromium, под ubuntu, на некоторых сайтах шрифты отображались без сглаживания, как оказалось в последствии, это баг chromium который проявляется не всегда. В том же самом релизе chromium (линейки 18) на арче все выглядит нормально.

Ниже описаны действия которые я проделывал у себя, сохраню собранную инфу для будущих поколений. Почти все это можно найти в разных уголках вики.

Первоначальная установка

Пакеты выбранные при установке:

# группы
base base-devel

# пакеты
net-tools netcfg openssh sudo wireless_tools

Локаль правим на последних шагах установщика либо уже после установки.

# vim /etc/locale.gen

# раскомментировать строку
ru_RU.UTF-8 UTF-8

# сохраняем файл, запускаем
locale-gen

Раскомментируем ближайшие репозитарии в файле /etc/pacman.d/mirrorlist. Свежий список зеркал можно получить тут.

Настроем wifi-сеть с помощью netcfg.

# скопируем пример с настройками 
cp /etc/network.d/examples/wireless-wpa /etc/network.d/mywifi

# внесем нужные правки в /etc/network.d/mywifi (название сети, пароль)
vim /etc/network.d/mywifi

# выполним для безопасности
chmod 0600 /etc/network.d/mywifi

# добавим netcfg при загрузке, для этого надо отредактировать строки с NETWORKS и DAEMONS
vim /etc/rc.conf

NETWORKS=(mywifi)
DAEMONS=(syslog-ng @network @net-profiles crond)

Со времени выхода последнего установочного диска (август 2011) были проделаны разные обновления в внутренностях системы. Подскажем системе что обновилось.

1. initscripts update

rm /etc/profile.d/locale.sh

2. Ошибка вида glibc: /usr/bin/tzselect exists in filesystem

pacman -S tzdata

3. filesystem upgrade

pacman -S filesystem --force

Обновим систему.

pacman -Syu

Добавим в /etc/pacman.conf два новых репозитария для yaourt и vim. Краткий список с примерами использования pacman и yaourt (надстройка над pacman с возможность установки из AUR) можно посмотреть тут.

# vim /etc/pacman.conf

[archlinuxfr]
Server = http://repo.archlinux.fr/$arch

[herecura-stable]
Server = http://repo.herecura.be/herecura-stable/$arch

Обновим vim и yaourt.

pacman -S herecura-stable/vim yaourt

Добавим рабочего пользователя и добавим его в группу wheel. Я использую zsh вместо bash потому сразу и установлю его.

# создание пользователя

pacman -S zsh
useradd -m -g users -G audio,lp,optical,storage,video,games,power,wheel -s /bin/zsh proft
passwd proft

# добавление в новую группу
export EDITOR=vim && visudo

# раскомментировать строку
%wheel ALL=(ALL) ALL

Графическая среда

Установка Xorg.

sudo pacman -S dbus xorg-server xorg-xinit xorg-utils xorg-server-utils xorg xf86-input-keyboard xf86-input-mouse

Добавить dbus в DAEMONS.

Установка драйвера на видео.

# для intel
sudo pacman -S xf86-video-intel

# для nvidia
sudo pacman -S nvidia

Установка XFCE.

sudo pacman -S xfce4 xfce4-goodies
sudo yaourt -S xfce4-volumed xfce4-notifyd

Для корректной отрисовки приложений написанных на QT понадобится пакет libgnomeui.

sudo pacman -S libgnomeui

Установка менеджера входа Slim.

sudo pacman -S slim slim-themes archlinux-themes-slim

Отредактируем /etc/inittab, переключив уровень запуска по умолчанию на 5, также раскомментируем строку с slim, для включении его в качестве менеджера входа по умолчанию.

Добавим новые раскладки для клавиатуры.

# sudo vim /etc/X11/xorg.conf.d/10-evdev.conf:
# в раздел для клавиатуры добавим

Option "XkbLayout" "us,ru,ua"
Option "XkbVariant" ",winkeys"

Активируем запуск xfce при логине.

# vim ~/.xinitrc

#!/bin/sh
exec ck-launch-session startxfce4

Установим дополнительные шрифты.

yaourt -S ttf-dejavu ttf-bitstream-vera ttf-ms-fonts terminus-font ttf-ubuntu-font-family

Установим скринсервер.

yaourt -S xscreensaver-arch-logo

Украшательства: темы, иконки, курсоры.

sudo pacman -S faenza-cupertino-icon-theme faenza-icon-theme faenza-xfce-addon xcursor-human xfce-theme-greybird zukitwo-themes

Звук

Т.к. ALSA установлена по умолчанию, то установим пакет alsa-utils в котором есть микшер.

sudo pacman -S alsa-utils 

Включим звук с помощью alsamixer (по умолчанию он отключен).

Сохраним настройки.

sudo alsactl store

Добавим alsa в /etc/rc.conf (секция DAEMONS) для восстановления уровней микшера при загрузке.

Дополнительные приложения

Сетевые приложения.

sudo pacman -S dnsutils whois flashplugin firefox chromium transmission-gtk

Skype.

yaourt -S skype skypetab-ng-git v4l-utils

Добавим в Skype удобный способ оповещения с помощью notify-send:

# Входящий звонок
notify-send "%sname" "Вам звонит" -i skype

# Номер занят
notify-send "%sname занят" -i skype

# Звонок не удался
notify-send "%sname звонок не удался" -i skype

# Удержание вызова
notify-send "%sname" "Удержание звонка" -i skype

# Вызов продлен
notify-send "%sname" "Вызов продлен" -i skype

# Вызов завершен
notify-send "%sname" "Вызов завершен" -i skype

# Контакт показался в сети
notify-send "%sname" "Снова в сети" -i skype

# Контакт покинул сеть
notify-send "%sname" "Покинул сеть" -i skype

# Первое сообщение получено, сообщение получено
notify-send "%sname" "%smessage" -i skype

# Запрос на передачу файла
notify-send "%sname передаёт файл %fname (%fsize)" -i skype

# Передача файла завершена
notify-send "%sname" "Завершил передчу файла %fname" -i skype

# Передача файла не удалась
notify-send "Ошибка передачи файла" "%fname (%fsize)" -i skype

Аудио и видио-плейер, кодеки.

sudo pacman -S smplayer smplayer-themes deadbeef libvorbis libmad flac curl wavpack ffmpeg libsndfile mpg123

Nautilus и архивы (rar, zip c поддержкой национальных символов).

pacman -S nautilus p7zip zip unrar file-roller gstreamer0.10-plugins
yaourt -S unzip-beta gloobus-sushi-bzr 

Ассоциация файлов с приложением для отдельного пользователя находятся в ~/.local/share/applications/mimeapps.list. Для всех пользователей в /usr/share/applications/defaults.list.

Dropbox.

yaourt -S dropbox dropbox-daemon nautilus-dropbox

Впишем имя системного пользователя в файл /etc/conf.d/dropboxd.conf.

Добавим dropboxd в список DAEMONS в файле /etc/rc.conf.

LibreOffice.

pacman -S libreoffice libreoffice-gnome

Разная мелочь: Synapse, Clipit, Caffeine, Goldendict, Pidgin.

yaourt -S synapse clipit caffeine goldendict-git pidgin pidgin-faenza-tray-dark-icons evince keepassx 

Настройки для ноутбука/нетбука

Установим драйвер для тачпада.

sudo pacman -S xf86-input-synaptics

Установим пакет laptop-mode-tools для управления энергосбережением.

sudo pacman -S laptop-mode-tools acpi hdparm

Добавим laptop-mode в список DAEMONS в файле /etc/rc.conf.

Подробности настройки Laptop Mode смотри в вики и про ноутбуки в целом.

Настройка принтера

Для Samsung'овских usb-принтеров понадобятся два пакета

yaourt -S cups-usblp splix

Дальше заходим браузером на http://localhost:631, вводим рутовый пароль, выбираем Adding Printers and ClassesAdd Printer и следуем предлагаем инструкциям.

Скриншот десктопа.

Desktop
18 Oct 18:39

David Walsh on Redesigning with Sass

by Chris Coyier

The following post is by David Walsh. David is a web developer from my own hometown of Madison, Wisconsin and currently working for Mozilla.

David recently redesigned his blog and is having a series of guests write posts for his site. We decided to do it crossover style: he writes an article for CSS-Tricks and I'll write an article for the David Walsh blog. He used Sass in his redesign and his article below is about that experience. I've been using it for closer to a year, so my post on his site is about that experience.

Creating any website without using a CSS preprocessor seems a horrible decision.  Even if only to be able to quickly modify a few colors or element dimensions, or even just to easily merge and compress CSS files, CSS preprocessors are becoming essential.  For my recent redesign of the David Walsh Blog, I decided now was the time to dive face first into CSS preprocessors.  Here are a few thoughts about my experience, and hopefully you pick up a few tips along the way.

Deciding to be Sassy

There's not much a decision to be made about whether or not to use a tool like Sass or LESS, the questions is more of which should be used. In the end, I chose Sass because:

  • my experiences with LESS have been ... less than appealing; the tool seems ... less maintained
  • a utility like Compass, a collection of mixins with an updater, is invaluable
  • the extend() API looked great
  • embedding media query styles within a selector improves organization
  • sprite generation is a huge time-saver
  • Chris Coyier told me to!

When you author a blog like David Walsh Blog or CSS-Tricks, learning a new CSS utility also presents the perfect opportunity to write about another useful topic.  Using Sass on this project was obviously the best choice.

Useful Snippets

Here are a few of the Sass snippets I used often on my site:

Vendor Prefixing

@mixin vendorize($property, $value) {
	-webkit-#{$property}: $value;
	-moz-#{$property}: $value;
	-ms-#{$property}: $value;
	-o-#{$property}: $value;
	#{$property}: $value;
}

Float Clearing

@mixin clear() {
    &:before, &:after {
        content: "\0020";
        display: block;
        height: 0;
        overflow: hidden;
    }
    &:after {
        clear: both;
    }
}

Offscreen Text

@mixin linkTextOffscreen() {
    text-indent: -9999px;
    overflow: hidden;
    text-decoration: none;
    display: block;
    font-size: 0;
    text-align: start;
}

:hover, :active, :focus Styles

@mixin hoverActiveFocus($property, $value) {
    &:hover, &:active, &:focus {
        #{$property}: $value;
    }
}

I used these mixins quite a bit throughout my code. A few of my snippets mimic functionality provided by Compass, but I like seeing the specific styles provided by mixins.

Mistakes, Mistakes

As with using any tool for the first time, I made quite a few mistakes.  Mistakes are healthy though - you learn from them and write about them so others don't take those same missteps.  Mistakes I made include:

  • Nesting == Bloat:  The biggest mistake I made with Sass, by far, was nesting styles when they didn't need to be.  At the time of launch, my main CSS file was a vomit-inducing 59k!  I'm still working toward reducing the size of my styles, and it's a much more difficult task now that the site has launched because of...
  • ...Specificity Clashes:  Because of my issue with nesting styles when I didn't need to, I ran into a bunch of specificity clashes, bloating my CSS file even further.  When it got to the screen size media query CSS, I was needing to mark everything as !important.  That's an incredible amount of CSS bloat and hassle because of improperly using SASS selector nesting.
  • Sprite Generation... Too Late:  One of the big reasons I chose SASS was because I knew SASS managed sprite generation.  What a time-saver, right?  Well, only as long as you knew how to format them in the first place.  My problem was that I created my CSS with normal background-image declarations, without paying attention to SASS' desired format.  I went to create my sprites after knowing the correct format and said "WTF FML".  In the end, I created my own sprites because I didn't write my SASS correctly in the first place.  Very annoying mistake.
  • Duplicating Compass-provided Helpers:  I don't need to cite them... I'm more than certain I duplicated functionality provided by Compass.  I'll likely pay for it later if I don't update my code and stay aware of browser capabilities.

Tips and Last Impressions

I want to leave everyone with a few tips for getting started with SASS, and share a few last impressions of Sass development:

  • Despite my duplication of Sass-provided functionality and nesting issues, Sass is an incredible tool that, accompanied by Compass, provides the ultimate tool+updating environment available.
  • When nesting selectors, ask yourself if it's really necessary to do so.  Sure nesting also allows for better code organization, but a bloated stylesheet makes all of your users suffer.
  • Create variables for your CSS animation properties, especially duration and delay. Consistent animation timing ensures eye-pleasing UI effects.
  • Create variables for block padding, and use simple equations ($blockPadding/2) for lessor blocks. This ensures consistent element spacing.
  • You can nest media queries for selectors but I prefer creating a separate file for mobile / media query-specific styles;  it allows me to see the entire set of mobile styles in one glance. The same could be said for my print styles.
  • I used these directions to add Sass syntax highlighting to Sublime Text 2.
  • Keep track of your CSS file size(s) while you code, and periodically review your nesting strategy to avoid style bloat.
  • Utilize CSS animations as best you can -- they can save you a load of JavaScript code down the road.

In the end, I'm incredibly happy with my decision to use Sass as my CSS preprocessor.  The documentation is helpful, you can get up and running in a few minutes, and Compass is an invaluable tool in so many ways.  My only problems with SASS were self-inflicted, and will be easily avoidable the next time around.  Give Sass a chance for your next website or redesign - its usefulness is immeasurable and will pay off for the duration of your project.

David Walsh on Redesigning with Sass is a post from CSS-Tricks

12 Oct 11:16

The Best Of – молодіжне кафе в центрі Львова

by Павло Гук

The Best Of - молодіжне кафе в центрі Львова

Гуляючи Львовом одного осіннього дня, ми натрапили на кафе під назвою The Best Of, яке сподобалось нам своїм виглядом та концепцією. Тому ми вирішили розповісти про нього на сторінках цього сайту, заодно поспілкувавшись з власником про те, як виник цей заклад та що в ньому цікавого.

Роман Гаврик, менеджер

Як виникла ідея кафе Best of?

Хотілося відкрити заклад для молоді, в якому справді смачні та недорогі страви, і в якому панує дружня атмосфера, так як прийнято в європейських закладах.

В чому особливість вашої кухні?

В Сafe Best Of присутнє найкраще з того, що може зацікавити молоду людину, яка подорожує світом. У нас і страви середземноморської кухні, і сендвічі з якісних інгредієнтів (американські тости, чіабата, моцарела, в’ялена шинка та ін.). Окрім цього в нашому меню Ви можете знайти щось абсолютно нове для Львова. Зокрема, це Bubble Tea – напій, який зараз в тренді в Європі. Можна сказати, що ми працюємо над виховуванням починаючих гурманів

Чи є якісь страви, які робитимуть тільки в певний сезон?

Ми постійно доповнюємо наше меню сезонними пропозиціями. На даний момент ви можете у нас скуштувати м’ясні делікатеси, які ми спеціально привезли з Мюнхену з нагоди святкування Octoberfest і попити пива з літрових бокалів, щоб повністю зануритися в атмосферу цього свята. На Halloween до пива будемо подавати сухарики з чіпсами з черв’ячків та саранчі, та різні “специфічні страви” від гарбузового супу до салату з флячків або мізки фрі на підливі з червоного вина та крові. На холодний сезон будемо готувати домашні сирні пампушки, глінтвейн та раклет, який є теж чимось новим для нашого відвідувача.

Неабиякою популярністю серед наших відвідувачів користується наше «гостре меню». До прикладу в «Тесті на мужність» ми пропонуємо скуштувати 4 найгостріші соуси в світі. При бажанні такі соуси в нас можна навіть придбати. Самі неоднозначні реакції відвідувачів на пекельну гостроту наших соусів ми знімаємо на відео і виставляємо у себе в соцмережах :)

Хто створював дизайн інтер’єру?

Дизайном закладу займався Іван Студницький (більш відомий як Vanish) – молодий дизайнер з яким вже давно знаємося і дружимо… На стінах Cafe BestOf ви можете прочитати багато цікавої кулінарної інформації та фактів. В інтер’єрі багато зусиль власноруч забрала витяжка та підсвітка яку робили… Наш широкий вибір спеціальнийх напоїв та соусів ми використали, як елемент інтер’єру, презентуючи їх просто в залі.

The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова The Best Of - молодіжне кафе в центрі Львова

Фото: Олександр Бистріков

Місце
Львів, пров. Крива Липа, 3

Час роботи
10:00-22:00

Сайт
best-of.lviv.ua

 

10 Oct 20:50

Кадри з фільмів у реальному житті

by Сергій Пішковцій

Кадри з фільмів у реальному житті

Всі ми любимо дивитись фільми, однак не кожен з нас дивиться їх так уважно, як це робить американський кіноман Крістофер Молоні. Він завів блог, в якому публікує фото з місць, які колись були показані у популярних фільмах, накладуючи роздруковані кадри на сучасні знімки.

Кадри з фільмів у реальному житті Кадри з фільмів у реальному житті Кадри з фільмів у реальному житті Кадри з фільмів у реальному житті Кадри з фільмів у реальному житті Кадри з фільмів у реальному житті Кадри з фільмів у реальному житті Кадри з фільмів у реальному житті Кадри з фільмів у реальному житті Кадри з фільмів у реальному житті Кадри з фільмів у реальному житті Кадри з фільмів у реальному житті

До речі, саме за таким методом працював Микола Кравцов, який накладає старі фотографії Львова на сучасні місця.

10 Oct 20:39

[Из песочницы] Используем возможности Wolfram Mathematica в .NET приложениях

by Kazemir
Есть люди, которым нравится писать .NET приложения. Есть люди, которые любят системы компьютерной алгебры. В этой статье круги Эйлера пересекутся!


Читать дальше →
10 Oct 16:54

Встречайте бесплатную и свободную гарнитуру «Scada»

by Mithgol
Дизайнер-шрифтовик Иван Гладких, более известный как Джованни Лемонад (Jovanny Lemonad), вчера (9 октября 2012 года) объявил о выходе гарнитуры «Scada», состоящей из четырёх шрифтов (обыкновенного, наклонного, жирного, наклонного жирного).

[демонстрация Scada]

Лемонад с 2005 года создавал эту гарнитуру для одноимённой латвийской дизайн-студии («Scada», г. Рига) совместно с её работниками. Решение сделать шрифт свободным было принято в честь десятилетия студии. (Если пойдёте по этой гиперссылке, то увидите ряд примеров употребления «Скады» при печати на реальной бумаге.)

Гарнитура «Scada» пригодна для набора обыкновенного текста:

[скриншот Scada]

Читать дальше →
06 Oct 17:09

Київ вечірній

by Сергій Пішковцій

Київ вечірній

Популярний український фотоблогер Олег Стельмах вирішив зібрати найцікавіші фото вечірнього Києва, які він зробив цього літа, та викласти для вільного перегляду. Ми також вирішили поділитися ними з вами.

Київ вечірній Київ вечірній Київ вечірній Київ вечірній Київ вечірній Київ вечірній Київ вечірній Київ вечірній Київ вечірній Київ вечірній Київ вечірній Київ вечірній Київ вечірній Київ вечірній Київ вечірній Київ вечірній

Більше про нашу столицю в потоці Київ

03 Oct 10:08

С Webmoney все хорошо! Без паники!

by Maiami
Итак, быстро и кратко о бабле. Все сейчас только и обсуждают то, что, якобы: «О боже мой, всё ВебМоней надо списывать из списка платежных систем и т.п.!» Дело в том, что на днях проскочила новость, а именно: news.rambler.ru/15741050/ Что, якобы, лимиты есть в соответствии с новым законом, и, что лимиты на анонимные кошельки, всего-то, 15к — [...]
03 Oct 09:35

SHA-3 Winner Announced

by Soulskill


An anonymous reader writes "The National Institute of Standards and Technology (NIST) has just announced the winner of the SHA-3 competition: Keccak, created by Guido Bertoni, Joan Daemen and Gilles Van Assche of STMicroelectronics and Michaël Peeters of NXP Semiconductors. 'Keccak has the added advantage of not being vulnerable in the same ways SHA-2 might be,' says NIST computer security expert Tim Polk. 'An attack that could work on SHA-2 most likely would not work on Keccak because the two algorithms are designed so differently.' For Joan Daemen it must be a 'two in a row' feeling, since he also is one of the authors of AES."

Share on Google+

Read more of this story at Slashdot.

29 Sep 08:46

Тим Кук открыто извинился за новые карты

by Sergey Suyagin

Тим Кук открыто извинился за карты

Только что Apple опубликовали на своём сайте открытое письмо от CEO Apple Тима Кука, в котором содержатся извинения относительно качества представленных в iOS 6 новых карт.

Читать дальше

29 Sep 08:46

Паризька електричка: палац на колесах

by Сергій Пішковцій

Паризька електричка: палац на колесах

Які асоціації зазвичай виникають у вас зі словом “електричка”? Так, здебільшого це – бруд, холод, натовпи, шкарпетки і газети на продаж. В Парижі тим часом запустили приміську електричку, інтерєр якої нагадує скоріше Версальський палац, ніж громадський транспорт. Стелі вагонів прикрашають твори мистецтва, а всередині можна побачити стелажі з книгами та шкіряні крісла. Потяг їде з Парижу до Версалю.

Паризька електричка: палац на колесах Паризька електричка: палац на колесах Паризька електричка: палац на колесах Паризька електричка: палац на колесах Паризька електричка: палац на колесах Паризька електричка: палац на колесах Паризька електричка: палац на колесах Паризька електричка: палац на колесах Паризька електричка: палац на колесах Паризька електричка: палац на колесах Паризька електричка: палац на колесах Паризька електричка: палац на колесах Паризька електричка: палац на колесах Паризька електричка: палац на колесах Паризька електричка: палац на колесах Паризька електричка: палац на колесах