Значимые нововведения в ИТ, запланированные на лето 2015

Предыдущие сообщения
25 марта 2015
#1 kanaris uid#1
  1. Планируется выход винды 10, которая обещает быть легковесной и с поддержкой старого привычного интерфейса. Ждемс, запиливаю на нетбук (если не говно будет).
    по статистике должно быть не говно, я гарантирую это!
  2. Мозилла собирается открыть проект, предоставляющий возможность регистрировать SSL сертификаты бесплатно и всем. https://letsencrypt.org/ . Запилим на ХС, как только сделают ;)
  3. Стандарт Ecmascript 6 собираются опубликовать в июне 2015. Пруф: http://habrahabr.ru/post/241275/ . В чем профит: наконец-то будут поддерживаться нормальные классы в Яваскрипте!!! (ну это для меня хорошая новость)
23:35:30 0
#2 Flash_X uid#496 Genius
ES6
JS сейчас просто шикарен, а классы превратят его в C#
13:37:00 0
#3 Flash_X uid#496 Geniusа что, с linux не разобрался? 14:03:42 0
#4 kanaris uid#1
JS сейчас просто шикарен, а классы превратят его в C#
Ой, всё. Там наследование через жопу реализовано.
Как оно работает?
Есть разные мнения, кто придумал функцию extend, но популяризацией она обязана Дугласу Крокфорду.

Как и почему она все-таки работает - может быть неочевидно даже опытным javascript-специалистам.

Попробуйте понять это, полистав спецификацию, особенно параграфы 13.2 и 15.3, а если какие-то вопросы остались - читайте дальше.

Предупреждение. Объяснение сложное, подробное и, вообще говоря, не обязательное, ведь функция "просто работает". Читайте на свой страх и риск.— http://javascript.ru/tutorial/object/inheritance
Вот если бы была нормальная поддержка классов - не пришлось бы так изъебываться.
а что, с linux не разобрался?
Ну его в жопу, лучше подожду пока выпустят ось с человеческим лицом, тогда заюзаю.
Я не фанат винды. Винда говно. Но юзаю винду, потому что все остальное только хуже.
15:18:35 1
#5 Flash_X uid#496 GeniusНаследование в JS:
/*
 * Base Class
 */

var Base = (function() {
	var $ = function() {};
	$.prototype.init = function() {
		// Method
	};
	return $;
})();

/*
 * Extend Class
 */

var Extend = (function() {
	var $ = function() {};
	$.prototype = new Base;
	$.prototype.method = function() { // new method init
		
	};
	return $;
})();
15:44:15 0
#6 Flash_X uid#496 Genius
юзаю винду, потому что все остальное только хуже.
ну ну :)
16:36:51 0
#7 kanaris uid#1 Вот-вот, чтобы создать дочерний класс, нужно создавать экземпляр родительского класса: $.prototype = new Base;. Это значит, что выполнится конструктор, а этого происходить не должно. 20:50:29 0
#8 Flash_X uid#496 GeniusВообще у меня вот такая парадигма написания кода:
'use strict';


var Human = (function() {
	var $ = function() {
		var $=this;
		$.chromosomes = [];
	};
	$.prototype.init = function() {
		var $=this,args=arguments[0]||{},cb=arguments[1]||function(){};
		
		return $;
	};
	return $;
})();

var Female = (function() {
	var $ = function() {
		var $=this;
		$.chromosomes.push('X');
		$.chromosomes.push('X');
	};
	$.prototype = new Human;
	$.prototype.init = function() {
		var $=this,args=arguments[0]||{},cb=arguments[1]||function(){};
		cb(null, true);
		return $;
	};
	return $;
})();

var Male = (function() {
	var $ = function() {
		var $=this;
		$.chromosomes.push('X');
		$.chromosomes.push('Y');
	};
	$.prototype = new Human;
	$.prototype.init = function() {
		var $=this,args=arguments[0]||{},cb=arguments[1]||function(){};
		cb(null, true);
		return $;
	};
	return $;
})();

var Bob = new Male();

Bob.init({
	name: 'Bob'
}, function(err, data) {
	if(err) {
		// error handler
	} else {
		// work with data
		console.log(data);
	}
})

З.Ы.

Что за хуйня с Блинком?
alert(11111111111111111);
alert(1111111.1111111111 * Math.pow(10,10) == 1111111111.1111111 * Math.pow(10,7));
Хотя вольфрам говорит, что всё верно.

З.З.Ы.

WTF??
22:02:48 0
#9 kanaris uid#1
var $=this,args=arguments[0]||{},cb=arguments[1]||function(){};
Что это за способ записи такой? Через запятую. Первый раз вижу.
23:08:44 0
#10 Flash_X uid#496 Genius
var a=1, b=2;
эквивалентно
var a=1;
var b=2;
23:17:45 1
#11 Flash_X uid#496 Geniusхотя безусловно es6 привнесёт больше Хорошего нежели плохого. и можно на нём кодить уже сейчас. тыц 23:30:50 0
#12 Flash_X uid#496 Geniusтолстый, сумбурный оффтоп:

вот ты заметил что сейчас происходит:
беседа ушла в оффтоп. но оффтоп конструктивный (сносить жалко), по этому имеет место быть. ты в движке своём не собираешься обыграть эту ситуацию?

что есть форум. Форум это пачка постов. Каждый (примитивный) пост имеет

1. содержимое
2. ссылку на автора
3. ссылку на тему

Если первое и второе очевидные вещи, то на третью можно посмотреть под совершенно другим углом:
Если рассматривать темы, не как каталоги с постами, а как Теги, то можно очень удобно преобразовать концепцию форума:

1. любые конструктивные посты где бы они ни были будут поднимать конструктивное обсуждение без "давления" со стороны темы топика.
2. навигация будет не привычной, но удобной, т.к. по оценкам постов, рейтингу отписавшихся и по длине ветки можно будет определить её полезность.
3. легче будет участвовать в обсуждениях, на темы которые тебе интересны (подписавшись на некоторые теги).

+ можно будет разделить карму по тегам. т.е. если ты пишешь толковые посты про JS но нихуя не смыслишь в Linux, то твоё мнение о первом будет цениться выше чем твоё же мнение о втором. Сейчас же, если кто-то с высокой кармой напишет пост о том, в чём он не смыслит, то ценность этого поста будет считаться очень высокой. Точно так же и с оценками постов, ты можешь минусануть пост, но твой минус будет помножен на производную от твоей кармы по тегу. В итоге виндузятники не смогут заминусавать линуксоидов в теме о том, каким должно быть ядро ОС.
(каждый пост содержит оценку: -1 либо 0 либо 1, которая умножается на коэффициент его кармы по данному тегу. Оценка идёт в карму предидущего поста.)


Итог:
<?xml version="1.0" encoding="UTF-8" ?>
<post id="1" parent="0" value="0" author="kanaris">
    <sublects>
        <subject>summer 2015</subject>
        <subject>windows 10</subject>
        <subject>SSL</subject>
        <subject>ES6</subject>
    </sublects>
    <body>Text of comment></body>
</post>


<user login="">
    <sublects>
        <subject value="63">ES6</subject>
        <subject value="33">summer 2015</subject>
        <subject value="12">windows 10</subject>
        <subject value="3">SSL</subject>
        <subject value="-43">Linux</subject>
    </sublects>
</user>
00:19:58 1
#13 kanaris uid#1 Про теги думал, даже задавал вопрос на хэшкоде. Проблема в том, что юзеры добавляют кучу мусорных тегов, а если определить белый список, то получится очень плохо расширяемо. Найду ссылку, скину. 12:22:49 0
#14 Flash_X uid#496 Geniusтаки это решаемо:
во первых завести правило, что можно смело минусовать за неправильные теги (даже тег такой сделать)
во вторых, давать автоподсказку к тегам (как сделано на хабре с хабами при создании нового поста)
в третьих, при ответе, на предыдущий пост, предлагать его теги
в четвёртых переспрашивать, у юзера, уверен ли он в выбранных тегах.
14:44:59 0
#15 Flash_X uid#496 Geniusменя больше смущает интерфейс взаимодействия с пользователем.

А так аж руки чешутся накодить, когда представляешь как оно красиво ляжет на Neo4j))
15:52:26 0
#16 kanaris uid#1 http://hashcode.ru/questions/278832/%D0%B0%D0%BB%D...

(убил бы нахуй за такие УРЛы). К счастью, если удалить довесок, сработает. На некоторых сайтах не срабатывает.
http://hashcode.ru/questions/278832/
18:08:20 0
#17 kanaris uid#1 Что сука характерно, меня очень напрягает присутствие модераторов на сайте, когда каждый раз, твой пост кто-то подтирает, исправляет, как считает правильным на свое усмотрение (часто это отличается от того как я задумал). Тут я даже хз как сделать. Коллективным разумом - но найдутся ли такие добровольцы, которые вместо чтения сайта указывать юзерам как правильно оформлять посты. 18:12:23 0
29 марта 2015
#18 MACTEP uid#646 я делалл )))))) но ты меня на...уй послал 16:15:39 0
7 июля 2015
#19 kanaris uid#1 Upd информации!
  1. Windows 10 поступит в продажу 29 июля 2015 г. и будет доступна в виде бесплатного обновления пользователям Windows 7 и Windows 8.1;
  2. Проект Lets Encrypt перенесли на сентябрь. Сколько еще будет отсрачиваться, не известно;
  3. ES6 недавно проверял. Огнелис обновился до 39 версии, в которой уже обещали поддержку. Протестил, class по прежнему выступает как зарезервированное слово. В Хроме классы поддерживаются, но наследование не получилось. Я настойчиво ковырять не стал, ибо это еще мало где поддерживается.
12:03:03 0
Следующие сообщения
*Ник: Проверка уникальности... Если вы уже зарегистрированы, авторизуйтесь.
*Сообщение:
  Загрузка...