Согласно новости , мы наблюдаем новый виток развития индустрии. Так что дорогие студенты, в ближайшее время надо срочно начинать учить Android и сопутствующие сервисы.
Очень хорошие статья для так называемого "квик старта "
http://habrahabr.ru/blogs/android/99323/
http://habrahabr.ru/blogs/android/98704/
Удачи всем.
p.s
Новость радует, потому что политика гугла, имхо полиберальней, чем гламурного яблока.
понедельник, 8 ноября 2010 г.
Google и mod_pagespeed
Оно само не ничего не сжимает
http://code.google.com/intl/en/speed/page-speed/docs/using_m...
Могут перестать работать сложные js скрипты, например CKEditor.
Из личного опыта простейшая страница поиска с ajax стала дико тормозить, чего раньше не наблюдалось.
Итого незачет однозначно...
p.s
И вообще почему не использовать nginx в режиме проксирования.
пятница, 22 октября 2010 г.
mysql, max_conntection и too many connections
mysql > set global max_connections = 200;
И да будет нам счастье
среда, 6 октября 2010 г.
Работа с идеями, их так много а я один.
Думаю многие сталкивались с некой, что ли проблемой. Вот в моей голове появилась идея. И после недолгих раздумий она показалась вам гениальной!
Дальше следует запись примерного названия идеи и...поставление ее в список задачь на будущее. А дальше следовала реализации наиболее понравившейся идеи( выбрал из десятка и начал), а потом... Два варианта события
1) в процессе реализации все так затянулось под напором объема работы или нового потока идей, что проект заглох.
2) в процессе реализации идея, как оказалось, нефига не гениальная.
3) идея оказалось гениальной, вы ее реализовали и почеваете на лаврах.
Итак забудем про пункт три. Ответим на пункты 1 и 2. В первом случае вам поможет, так называемые, циклы разработки, о них много написано. А вот наболевший для меня второй пункт решается до ужаса просто. Надо всего лишь изложить идею на бумаге, не просто название, а подробное описание.
Как правило, составив описание, вы довольно адекватно сможете оценить ценность идеи. Для себя я это объяснил тем, что человек не может хранить в голове больше семи объектов, а записав он видит полную картину.
Всем удачи
Дальше следует запись примерного названия идеи и...поставление ее в список задачь на будущее. А дальше следовала реализации наиболее понравившейся идеи( выбрал из десятка и начал), а потом... Два варианта события
1) в процессе реализации все так затянулось под напором объема работы или нового потока идей, что проект заглох.
2) в процессе реализации идея, как оказалось, нефига не гениальная.
3) идея оказалось гениальной, вы ее реализовали и почеваете на лаврах.
Итак забудем про пункт три. Ответим на пункты 1 и 2. В первом случае вам поможет, так называемые, циклы разработки, о них много написано. А вот наболевший для меня второй пункт решается до ужаса просто. Надо всего лишь изложить идею на бумаге, не просто название, а подробное описание.
Как правило, составив описание, вы довольно адекватно сможете оценить ценность идеи. Для себя я это объяснил тем, что человек не может хранить в голове больше семи объектов, а записав он видит полную картину.
Всем удачи
суббота, 18 сентября 2010 г.
Про сервисы Агава, хостинг,colocation etc
Сидел и думал, каким образом у веб-мастера происходит процесс выбора новой площадки для своего сайта, будь то хостинг или колокейшен. Действительно, а что тут думать?! Набираем в адресной строке google.com, yandex.ru ну и дальше по пристрастием.. В строке поиска пишем "хостинг" или "colocation" и дальше по ссылкам. Выбрали хостинг, цена подходит, имя у компании громкое..Заключаем договор?! Ан нет, брат не поленись, и набери в поисковой строке "отзывы хостинг Агава", и тогда ты попадешь на эту страничку( может быть:) )....
И здесь ты узнаешь, что colocation( подозреваю что и хостинг) у агава галимый, плохой, очень плохой, х...вый и так далее. Мы пользуемся их сервисом около(страшно подумать) больше трех лет, проблемы случаются регулярно с печальным постоянством :(, переехать не получается - ибо находимся мы не в москве, да и не корпорация мы, чтоб командировку себе устраивать туда, и возится с ним несколько дней...
P.S
Как оказалось самое интересное будет в комментариях
И здесь ты узнаешь, что colocation( подозреваю что и хостинг) у агава галимый, плохой, очень плохой, х...вый и так далее. Мы пользуемся их сервисом около(страшно подумать) больше трех лет, проблемы случаются регулярно с печальным постоянством :(, переехать не получается - ибо находимся мы не в москве, да и не корпорация мы, чтоб командировку себе устраивать туда, и возится с ним несколько дней...
P.S
Как оказалось самое интересное будет в комментариях
пятница, 17 сентября 2010 г.
Пишем понятный код
Давно хотелось написать что-то подобное, но все не знал как начать. И похоже начну с собственных боков, в принципе есть что в выражение: "на чужих ошибках люди учатся,а на чужих делают каръеру ". Вот обнаружил у себя с одной стороны безобидный вроде бы код :
Мне понадобилось добавить сюда три дополнительных поля город, телефон и примечания в итоге, следуя принципу психологической инерции я чуть было не оставил в работе вот этот вариант :
Так бы его и оставил, если б не начав его проверять я не понял, что
а) приходится постоянно переключать внимание со строки str на операции типа document.getElementById
б) строка str тяжело компоновалась в мысленное представление
Чтоб понять что не так, просто взглянем наш внутренний( тобишь тот, что у нас в голове) алгоритм проверки правильности строки str.
Пошагово
1) наше внимание фокусируется на элменте "login="
2) фокусируется на переменной login
3) ищет в коде var login=document.getElementById('login').value;
4) проверяет соответствие переменной login и значение аргумента функции getElementById
5) возвращается к строке str и ищет следующий элемент типа "login="
6) находит, и заносит элемент "login=" во внутреннюю допустим память, как обработанный
.....
повторяет шаг 1-6 для этого элемента добавляется дополнительный шаг поиска обрабатываемого элемента в списке уже обработанных.
......
Итак, сколько там у нас элементов, восемь?! А теперь приведу справку, при всей гениальности человека, среднестатистический индивид способен держать в оперативной памяти до 7 объектов ( наверно ученые имели ввиду оперировать ими ), да данный тезис наталкивает на дискуссию , но в приведенном примере алгоритма объектов явно больше. Да наш мозг работает быстро, и нам кажется, что мы даже не так обработаем данную строку, наверняка что-то оптимизируется, но это думаю потом, а первый раз по логике он сработает именно так, иначе появится вероятность ошибки.
После этих умозаключений предыдущий код переписал следующим образом:
Вроде бы алгоритм проверки тот же, но длинных переводов фокуса внимание нет. Как по мне намног удобнее, кстати раньше в IBM был негласный( а может добровольно принудительный) программисткий стандарт - код любой функции не должен привышать в длинну больше 25 строк. Почему именно 25 строк, а потому что именно столько вмещалось в текстовом редакторе DOS.
REQ=getHttp();
var login=document.getElementById('login').value;
var email=document.getElementById('email').value;
var name=document.getElementById('name').value;
var paswd1=document.getElementById('paswd1').value;
var paswd2=document.getElementById('paswd2').value;
var str='login='+login+'&email='+email+'&name='+name+'paswd1='+paswd1+'&paswd2='+paswd2;
SendRequest2(REQ,'regis.php',str,'POST',ajax_regis);
Мне понадобилось добавить сюда три дополнительных поля город, телефон и примечания в итоге, следуя принципу психологической инерции я чуть было не оставил в работе вот этот вариант :
REQ=getHttp();
var login=document.getElementById('login').value;
var email=document.getElementById('email').value;
var name=document.getElementById('name').value;
var paswd1=document.getElementById('paswd1').value;
var paswd2=document.getElementById('paswd2').value;
var phone=document.getElementById('phone').value;
var comments=document.getElementById('comments').value;
var city=document.getElementById('city').value;
var str='login='+login+'&email='+email+'&name='+name+'&paswd1='+paswd1+'&paswd2='+paswd2+'&phone='+phone+'&comments='+comments+'&city='+city;
SendRequest2(REQ,'regis.php',str,'POST',ajax_regis);
Так бы его и оставил, если б не начав его проверять я не понял, что
а) приходится постоянно переключать внимание со строки str на операции типа document.getElementById
б) строка str тяжело компоновалась в мысленное представление
Чтоб понять что не так, просто взглянем наш внутренний( тобишь тот, что у нас в голове) алгоритм проверки правильности строки str.
Пошагово
1) наше внимание фокусируется на элменте "login="
2) фокусируется на переменной login
3) ищет в коде var login=document.getElementById('login').value;
4) проверяет соответствие переменной login и значение аргумента функции getElementById
5) возвращается к строке str и ищет следующий элемент типа "login="
6) находит, и заносит элемент "login=" во внутреннюю допустим память, как обработанный
.....
повторяет шаг 1-6 для этого элемента добавляется дополнительный шаг поиска обрабатываемого элемента в списке уже обработанных.
......
Итак, сколько там у нас элементов, восемь?! А теперь приведу справку, при всей гениальности человека, среднестатистический индивид способен держать в оперативной памяти до 7 объектов ( наверно ученые имели ввиду оперировать ими ), да данный тезис наталкивает на дискуссию , но в приведенном примере алгоритма объектов явно больше. Да наш мозг работает быстро, и нам кажется, что мы даже не так обработаем данную строку, наверняка что-то оптимизируется, но это думаю потом, а первый раз по логике он сработает именно так, иначе появится вероятность ошибки.
После этих умозаключений предыдущий код переписал следующим образом:
REQ=getHttp();
var str='';
var login=document.getElementById('login').value;
str+='login='+login;
var email=document.getElementById('email').value;
str+='&email='+email;
var name=document.getElementById('name').value;
str+='&name='+name;
var paswd1=document.getElementById('paswd1').value;
str+='&paswd1='+paswd1;
var paswd2=document.getElementById('paswd2').value;
str+='&paswd2='+paswd2;
var phone=document.getElementById('phone').value;
str+='&phone='+phone;
var comments=document.getElementById('comments').value;
str+='&comments='+comments;
var city=document.getElementById('city').value;
str+='&city='+city;
SendRequest2(REQ,'regis.php',str,'POST',ajax_regis);
Вроде бы алгоритм проверки тот же, но длинных переводов фокуса внимание нет. Как по мне намног удобнее, кстати раньше в IBM был негласный( а может добровольно принудительный) программисткий стандарт - код любой функции не должен привышать в длинну больше 25 строк. Почему именно 25 строк, а потому что именно столько вмещалось в текстовом редакторе DOS.
Ярлыки:
анализ,
идеальный код,
написание,
принципы,
программный код,
читаемый
вторник, 3 августа 2010 г.
Собеседование
объявление для работы, я словил себя на мысли, что у меня нет четкого плана
собеседования. А значит его надо составить. Потому что вспоминая большинство своих собеседований до этого - могу с полной уверенностью сказать, что они были как дырявая система, если быть уверенным и не впадать в ступор можно скрыть все свои недостатки и октровенные пробелы в знаниях. Чтобы этого избежать мне надо
а) определить что мне от человека нужно
б) составить задания для их проверки
ответы :
а) для меня оказалось не важно ,какой язык знает кандидат, главное чтоб он
согласился писать на нужном мне(Perl в данном случае) и соображал головой..
б) Потому б свелось к списку простых тестов на соображалку
Собственно тесты
1.Объясните что такое База Данных в трёх предложениях, так как это сделал бы ваш 8-летний племянник
2.Вы были уменьшены до размеров 5-центовой монеты…
… и ваша масса была пропорционально уменьшена соответственно вашей плотности. Теперь вас бросили в пустой стакан блендера. Ножи начнут движение через 60 секунд. Что делать?
3.У вас есть 8 шаров одинакового размера…
...7 из них одинакового веса, а один весит чуть больше остальных. найти мяч, который тяжелее остальных, используя баланс и только два взвешивания?
4.Вы — капитан пиратского судна…
… и ваша команда собирается голосовать, как разделить награбленное золото. Если с вами будет согласно меньше чем половина пиратов, вы умрёте. Как вы поделите золото, так, чтобы получить хорошую часть добычи, но всё же остаться в живых?
5.Вам надо проверить, правильно ли записан ваш телефон у Боба…
… но вы не можете его спросить об этом прямо. Вам надо написать вопрос на бумажке и отдать Еве, которая отнесёт её Бобу и принесёт обратно ответ от него. Что вы должны написать на бумажке, кроме прямого вопроса, так, чтобы Боб смог понять сообщение, а Ева не смогла узнать ваш номер телефона?
6.Разработайте алгоритм работы лифта. (Домашнее задание)
Оцените его эффективность.
Ярлыки:
люди,
общение,
пример собеседования,
собеседование,
цели собеседования
Подписаться на:
Сообщения (Atom)