:%!python -m json.tool
На выходе получаем отформатированный JSON из каши.
:%!python -m json.tool
javascript: (function(){ function ats(){ var styles='*,p,div{user-select:text !important;-moz-user-select:text !important;-webkit-user-select:text !important;}'; jQuery('head').append(jQuery('<style>').html(styles)); var allowNormal=function(){ return true; } ; jQuery('*[onselectstart], *[ondragstart], *[oncontextmenu], #songLyricsDiv').unbind('contextmenu').unbind('selectstart').unbind('dragstart').unbind('mousedown').unbind('mouseup').unbind('click').attr('onselectstart',allowNormal).attr('oncontextmenu',allowNormal).attr('ondragstart',allowNormal); } function atswp(){ if(window.jQuery){ ats(); } else{ window.setTimeout(atswp,100); } } if(window.jQuery){ ats(); } else{ var s=document.createElement('script'); s.setAttribute('src','http://code.jquery.com/jquery-1.9.1.min.js'); document.getElementsByTagName('body')[0].appendChild(s); atswp(); } } )();либо просто добавив этот же кусок кода в букмарк, как я описывал в посте "Активные кнопки избранного на панели интернет-обозревателей".
javascript:(function(){function ats(){var styles='*,p,div{user-select:text !important;-moz-user-select:text !important;-webkit-user-select:text !important;}';jQuery('head').append(jQuery('<style>').html(styles));var allowNormal=function(){return true;};jQuery('*[onselectstart], *[ondragstart], *[oncontextmenu], #songLyricsDiv').unbind('contextmenu').unbind('selectstart').unbind('dragstart').unbind('mousedown').unbind('mouseup').unbind('click').attr('onselectstart',allowNormal).attr('oncontextmenu',allowNormal).attr('ondragstart',allowNormal);}function atswp(){if(window.jQuery){ats();}else{window.setTimeout(atswp,100);}}if(window.jQuery){ats();}else{var s=document.createElement('script');s.setAttribute('src','http://code.jquery.com/jquery-1.9.1.min.js');document.getElementsByTagName('body')[0].appendChild(s);atswp();}})();
telnet somehost.com 8080Но иногда нужно подключиться к хосту по SSL (secure) подключению. Тогда можно использовать openssl:
openssl s_client -connect somesite.com:443
Style | Example |
---|---|
bold | This is *bold* text |
italic | And this _italic_ |
And ~strikethrough~ | |
plain text inline | And inline {code}no text formatting, no emoticons, monospaced{code} |
plain text full | And full message !! no text formatting, no emoticons, monospaced |
no text formatting | And @@ *no text formatting* but emoticons :D |
"Здравствуйте, уважаемые форумчане. В связи с поиском работы, а также в ходе ретроспективного анализа моих предыдущих мест работы, спешу поделиться своими мыслями о том, на какие неочевидные детали при собеседовании стоит обратить внимание дабы избежать компании/фирмы/организации в которых будет неуютно инженеру с богатым опытом, а также инженеру, перманентно стремящемуся к профессиональному и финансовому росту. Для каждой детали у меня есть своя гипотеза, почему именно она является неприемлемой.
Итак, начнём с собеседования с hr-менеджером
— с вами пытается торговаться о зарплате HR-менеджер и/или первым делом пытаются выяснить "минимальную сумму, за которую Вы согласны работать"
Сразу отметаем подобные организации. Дело в том что организация может искать человека с целью 1) закрыть вакансию 2) найти человека, который будет реально помогать делать продукт. В чём же отличие, спросит пытливый читатель? А отличие в том, что первый вариант предполагает менеджмент уровня "получить деньги на старт/продолжение проекта и набрать 'ресурс' за минимальный бюджет", в то время как второй вариант предполагает менеджмент уровня "собрать сильную команду на годы, для успешного создания и развития продукта". В результате разница разительная. В первом случае получается команда в среднем слабо компетентных разработчиков, просиживающих большую часть рабочего дня за интернетами, чаепитиями либо беседами "за жизнь". При этом над ними с кислыми минами и претензиями как коршуны вьются менеджеры проектов, которые являются в таких организациях first-class citizens. Что в принципе обосновано, т.к. вся работа по обеспечению притока капитала лежит на менеджерах. Во втором случае получается команда сильных профессионалов, которые большую часть рабочего времени делают продукт, обеспечивают качество продукта, и связь между притоком капитала и качеством продукта самая непосредственная. В этом случае именно инженеры являются first-class citizens. Подытоживая — во всех организациях, о которых я могу сказать что они ищут людей по схеме №2, вопрос о зарплате задавался после всех собеседований.
Вариант №1 практически всегда (пресловутые 95%) встречается у "интеграторов", "аутсорсеров", "стартапов", а также примерно в половине случаев она встречается у продуктовых компаний, причём чем крупнее компания — тем вероятность выше.Вариант №2 в 95% случаев встречается у небольших компаний со штатом инженеров в пределах дюжины, имеющих свой продукт который приносит стабильный доход.
— hr-менеджер даёт вам "психологические тесты"hr-менеджер действительно может оценивать кандидата в плане психологии, являясь фильтром для очевидно неадекватных кандидатов, однако тесты это уход hr-менеджера от ответственности в принятии решения, а так как работа hr-менеджера есть отражение менеджмента в целом, готовьтесь к тому что в организации весь менеджмент избегает ответственности любыми доступными средствами
Собеседование с техническим менеджментом ( тимлид/техдир )— в качестве системы контроля версий используется git ( исключение — open-source проекты )это может показаться забавным, но именно этот пункт является ярким индикатором незрелости/неадекватности команды инженеров. Дело в том что идеальной для подавляющего числа организаций является централизованная vcs, в частности svn ( в купе с vpn-доступом). Так как распределённая vcs вносит дополнительный уровень сложности, а количество инструментов для работы с тем же svn в разы больше чем для работы с другими vcs, то должна быть очень веская инженерная причина для использования git/mercurial/etc. Если вы поинтересуетесь причиной и вам в ответ скажут что-то пространное ( вроде "в git легко делать бранчи" либо "весь мир давно перешёл на git", "в git можно коммитить локально" ), то с вероятностью 95% вы имеете дело с молодой порослью — читателями ксакеп.ру, хабрахабр, лор, которые далеки от инженерии как Линус от балета.
— вам дают тесты на техническом собеседовании или "тестовое задание" на домздесь одно из двух, либо вы — молодой, подающий надежды специалист, которого не о чем спросить кроме как о виртуальных деструкторах, либо собеседующий вас — некомпетентен и опять же ( как в случае с hr ) избегает ответственности в принятии решений. Человека с опытом можно распознать в простой беседе о двух вещах: 1) зашипленных проектах и его роли в них 2) беседой о том как бы человек решил инженерную задачу ( реально существующую в компании или выдуманную — не суть ). В рассказе по этим двум пунктам важно услышать всё — и собранные требования и выбранные инструменты и примерный дизайн решения. Предложение же сделать домашнее тестовое задание — это моветон в чистом виде. Максимум что от вас могут попросить вменяемые технари — это пример кода.
Поле боя— у разработчиков один мониторБез комментариев. Просто бегите.
— рабочее место сильно ограничено по площадиЛюди цепляются локтями/спинками кресел? Вам здесь не рады."
0.Preamble:
Please read this agreement carefully. This will help you make a decision about my hiring and will give some understanding of the workflow. This agreement applies to hourly jobs.
1.Workflow:
Most projects consist of the following stages:
1.1. Interview:
It's time for acquaintance and general discussion about the project. You can ask me any questions and give a small tests to confirm my skills. I will ask you general questions about the project to understand what it is and what can I do. If all goes well, this step ends my hiring.
1.2. Requirements and large design:
The objectives of this step is clarification of requirements, creating and approving of the statements of work (problem). And then building a comprehension of what should be the result of this work (solution). At this step we will discuss in detail: the functional requirements ("what and how it should do"), the user interface ("look and feel"), the internal architecture ("what be inside") etc. This step not will be included in the time track (i.e., it is free). But it is a significant part of the work so it will be make only after you hire me (I want to be sure that you are serious about the project).
1.3. Development:
It's the longest step. Here I will do small design, coding and test your solution. Usually this step induce a small amount of questions so we will do not communicate very often. I highly recommend watch my work diary and notify me immediately if you find any problems or you have any questions or any suggestions, it's will save our time. Upon completion this step you will get a turnkey solution for testing.
1.4. Integration and testing:
Here you will make test of turnkey solution, and make conclusions about suitability or about necessity do some changes (that will take us back to 1.2). If you satisfied we close this contract.
1.5. Maintenance:
If after ends contract you will have any questions or you found a bug, you can contact me and get help.
2.Warranty:
2.1. Money back:
You can get your money back within the first week after start the contract.
2.2. Maintenance:
After completion of the contact you get a free 1 month (2 months for regular customers) of maintenance.
3.Regular customers:
I really appreciate regular customers, so if you back within next 3 months after ends contract you will get additional bonuses:
3.1. 15% discount.
3.2. Additional month of maintenance.
4.Additionally:
By the accumulation of experience I will be change this agreement, but it has no effect on current customers.
|
diw
is d
elete i
nside w
ord.cat
is c
hange a
round t
ags.f>
is go f
orward to a closing chevron (>
).vi"
is v
isualise i
nside quotes ("
).If you have an iOS app, make sure you test it not only in iOS Simulator but on all the devices and releases that your app supports. Testing on more than one kind of device ensures that your app operates exactly as you thought it would, no matter which device it’s running on.
Important: Rigorously test your app on a variety of devices and iOS versions. Because different kinds of devices and iOS releases have different capabilities, it’s not sufficient to test your app on a device provisioned for development or the simulator. iOS Simulator doesn’t run all threads that run on devices, and launching apps on devices through Xcode disables some of the watchdog timers. At a minimum, test the app on all devices you support and have available. In addition, keep prior versions of iOS installed on devices for compatibility testing. If you don’t support certain devices or iOS versions, indicate this in the project target settings in Xcode, as described in “Setting Deployment Info.”
Fwd: Recipe for Bouillabaisse !2013/06/01 @Recipes #soup #fish #french
Удобная, кстати, фишка — напоминалки через email. Скорее всего есть уже полно таких инструментов, но еще один не помешает :)
РАСТИ, но РОС...
Корень рас(т)- пишется в глаголах расти, растить, вырастать, наращать и т.п. и во всех образованных от них словах, например: растение, произрастание, ращение, сращение, возраст и т. п., а также в слове отрасль;
корень рос(т)- пишется в прошедшем времени и в причастиях прошедшего времени от расти, например: рос, росла, росло, росший, вырос, выросший и т. п., а также в словах заросль, поросль, водоросль, недоросль, росток и в образованных от них словах.
#define LOC(__key__) [[NSBundle mainBundle] localizedStringForKey:(__key__) value:nil table:nil]
![]() | ||
Буквенные таблицы Шульте — тренировка бокового зрения
|
:'<,'>s/\%V\(.*\)\%V/token1\1token2)/
AcademyEngravedLetPlain, AmericanTypewriter, AmericanTypewriter-Bold, AmericanTypewriter-Condensed, AmericanTypewriter-CondensedBold, AmericanTypewriter-CondensedLight, AmericanTypewriter-Light, AppleColorEmoji, AppleSDGothicNeo-Bold, AppleSDGothicNeo-Medium, Arial-BoldItalicMT, Arial-BoldMT, Arial-ItalicMT, ArialHebrew, ArialHebrew-Bold, ArialMT, ArialRoundedMTBold, Avenir-Black, Avenir-BlackOblique, Avenir-Book, Avenir-BookOblique, Avenir-Heavy, Avenir-HeavyOblique, Avenir-Light, Avenir-LightOblique, Avenir-Medium, Avenir-MediumOblique, Avenir-Oblique, Avenir-Roman, AvenirNext-Bold, AvenirNext-BoldItalic, AvenirNext-DemiBold, AvenirNext-DemiBoldItalic, AvenirNext-Heavy, AvenirNext-HeavyItalic, AvenirNext-Italic, AvenirNext-Medium, AvenirNext-MediumItalic, AvenirNext-Regular, AvenirNext-UltraLight, AvenirNext-UltraLightItalic, AvenirNextCondensed-Bold, AvenirNextCondensed-BoldItalic, AvenirNextCondensed-DemiBold, AvenirNextCondensed-DemiBoldItalic, AvenirNextCondensed-Heavy, AvenirNextCondensed-HeavyItalic, AvenirNextCondensed-Italic, AvenirNextCondensed-Medium, AvenirNextCondensed-MediumItalic, AvenirNextCondensed-Regular, AvenirNextCondensed-UltraLight, AvenirNextCondensed-UltraLightItalic, BanglaSangamMN, BanglaSangamMN-Bold, Baskerville, Baskerville-Bold, Baskerville-BoldItalic, Baskerville-Italic, Baskerville-SemiBold, Baskerville-SemiBoldItalic, BodoniOrnamentsITCTT, BodoniSvtyTwoITCTT-Bold, BodoniSvtyTwoITCTT-Book, BodoniSvtyTwoITCTT-BookIta, BodoniSvtyTwoOSITCTT-Bold, BodoniSvtyTwoOSITCTT-Book, BodoniSvtyTwoOSITCTT-BookIt, BodoniSvtyTwoSCITCTT-Book BradleyHandITCTT-Bold, ChalkboardSE-Bold, ChalkboardSE-Light, ChalkboardSE-Regular, Chalkduster, Cochin, Cochin-Bold, Cochin-BoldItalic, Cochin-Italic, Copperplate, Copperplate-Bold, Copperplate-Light, Courier, Courier-Bold, Courier-BoldOblique, Courier-Oblique, CourierNewPS-BoldItalicMT, CourierNewPS-BoldMT, CourierNewPS-ItalicMT, CourierNewPSMT, DevanagariSangamMN, DevanagariSangamMN-Bold, Didot, Didot-Bold, Didot-Italic, EuphemiaUCAS, EuphemiaUCAS-Bold, EuphemiaUCAS-Italic, Futura-CondensedExtraBold, Futura-CondensedMedium, Futura-Medium, Futura-MediumItalic, GeezaPro, GeezaPro-Bold, Georgia, Georgia-Bold, Georgia-BoldItalic, Georgia-Italic, GillSans, GillSans-Bold, GillSans-BoldItalic, GillSans-Italic, GillSans-Light, GillSans-LightItalic, GujaratiSangamMN, GujaratiSangamMN-Bold, GurmukhiMN, GurmukhiMN-Bold, Helvetica, Helvetica-Bold, Helvetica-BoldOblique, Helvetica-Light, Helvetica-LightOblique, Helvetica-Oblique, HelveticaNeue, HelveticaNeue-Bold, HelveticaNeue-BoldItalic, HelveticaNeue-CondensedBlack, HelveticaNeue-CondensedBold, HelveticaNeue-Italic, HelveticaNeue-Light, HelveticaNeue-LightItalic, HelveticaNeue-Medium, HelveticaNeue-UltraLight, HelveticaNeue-UltraLightItalic, HiraKakuProN-W3, HiraKakuProN-W6, HiraMinProN-W3, HiraMinProN-W6, HoeflerText-Black, HoeflerText-BlackItalic, HoeflerText-Italic, HoeflerText-Regular, Kailasa, Kailasa-Bold, KannadaSangamMN, KannadaSangamMN-Bold, MalayalamSangamMN, MalayalamSangamMN-Bold, Marion-Bold, Marion-Italic, Marion-Regular, MarkerFelt-Thin, MarkerFelt-Wide, Noteworthy-Bold, Noteworthy-Light, Optima-Bold, Optima-BoldItalic, Optima-ExtraBlack, Optima-Italic, Optima-Regular, OriyaSangamMN, OriyaSangamMN-Bold, Palatino-Bold, Palatino-BoldItalic, Palatino-Italic, Palatino-Roman, Papyrus, Papyrus-Condensed, PartyLetPlain, STHeitiSC-Light, STHeitiSC-Medium, STHeitiTC-Light, STHeitiTC-Medium, SinhalaSangamMN, SinhalaSangamMN-Bold, SnellRoundhand, SnellRoundhand-Black, SnellRoundhand-Bold, Symbol, TamilSangamMN, TamilSangamMN-Bold, TeluguSangamMN, TeluguSangamMN-Bold, Thonburi, Thonburi-Bold, TimesNewRomanPS-BoldItalicMT, TimesNewRomanPS-BoldMT, TimesNewRomanPS-ItalicMT, TimesNewRomanPSMT, Trebuchet-BoldItalic, TrebuchetMS, TrebuchetMS-Bold, TrebuchetMS-Italic, Verdana, Verdana-Bold, Verdana-BoldItalic, Verdana-Italic, ZapfDingbatsITC, Zapfino
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^(void) {
// Your code
dispatch_async(dispatch_get_main_queue(), ^(void) {
// Now you can interact with the UI
});
});
+ (MyClass *)sharedClass {
static MyClass *_shared = nil;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
_shared = [[MyClass alloc] init];
});
return _shared;
}
if (NSClassFromString(@"SKStoreProductViewController")) { // Класс существует, значит мы в iOS 6+ SKStoreProductViewController *storeController = [[SKStoreProductViewController alloc] init]; …. } else { // Нет такого класса - значит мы на старом корыте }