Translate

понеділок, 31 грудня 2012 р.

Packt Publishing - Christmas Sale


Packt Publishing announced Christmas Sale. If you order two(or more) e-books each one will cost 5$. This offer is available until Thursday 3rd Jan 2013. So hurry up!

2012 was the dawning of a 2nd age for Java


Як водиться, кінець року - це час на підведення підсумків і створення планів на майбутнє.
Отже:

2012 - A Year in Review


2012 was a rocking year for Java, the JVM and the community. James Governer (RedMonk analyst) stated that "2012 was the dawning of a 2nd age for Java".



пʼятницю, 28 грудня 2012 р.

Project Lambda in Java SE 8


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

Project Lambda in Java SE 8

 












Резюме:
Daniel Smith розказує про Project Lambda включно з лямбда виразами, методами по замовчуванню і паралельними колекціями, що буде частиною майбутньої Java SE 8. 

Біографія
Daniel Smith працює в Oracle дизайнером мови Java і розробником компілятора. Зараз він курує роботу над специфікацією JSR 335: Lambda Expressions. Він здобув ступінь PhD in Computer Science в університеті Rice досліджуючи виведення типів в об'єктно-орієнтованих мовах.


четвер, 27 грудня 2012 р.

середу, 26 грудня 2012 р.

Spring vs JEE: RESULT


Вісім днів тому стартувало опитування Спрінг просто ЖЕЕ, яке не переросло в холівар, нажаль. Отже, статистика використань у львові виглядає наступним чином:


Як бачимо, кожен другий розробник використовує третій спрінг. Всі користувачі спрінга полюбляють свій фреймворк і не планують його змінити, навідмуну від ЖЖЕ, серед користувачів якого є бажаючі перейти на світлий спрінговий бік

Більш детальна статистика, для вашого персонального аналізу, доступна у форматі csv 



понеділок, 24 грудня 2012 р.

JIT. Intro


Пам'ятаєте, коли в останній раз з вас "сміялися" розробник C/С++ ? З того, що Java є безнадійно повільною?

В дечому вони праві. Але в багатьох випадках Java може посперечатись в продуктивності/швидкодії з багатьма суперниками. І це можливо в основному завдяки магії JIT.

Перш ніж перейти до пояснень Just-In-Time магії компіляції, дозвольте додати невеликий історичний екскурс.

Як ви, можливо, пам'ятаєте - Java є інтерпретованою мовою. Java-компілятор javac, не компілює файли вихідного коду Java безпосередньо в процесорні інструкції, як компілятори С. Замість цього він продукує байт-код, машинно-незалежного бінарний формат, який відповідає специфікації. Цей байт-код інтерпретується JVM. Це є основною причиною, чому Java є настільки успішною як крос-платформена мова програмування. Ви можете написати програму на одній платформі і запускати її на безлічі інших.

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


Вже завтра. 17-та зустріч Java User Group. Java 8 Lambda


Вже завтра  передноворіча зустріч Java User Group !!!

За адресою: Героїв Упа 73, кафе "Де Густо"

Компанія Conscensia гостинно запросила нас для проведення нашої зустрічі.

На зустрічі будуть обговорюватись 2 теми:
- JUG Lviv.(тема для розігріву) Куди рухатись дальше2. Прошу прийти з побажаннями/пропозиціями
- Java8 Lambda.(тема вечора) Приклади використання, порівняння з аналогами.

 Доповідач: Юрій Шуліга

+ подарунки від приймаючої сторони


П.С. Велике прохання, заповнити форму - інформація потрібна для підрахунку учасників зустрічі.




пʼятницю, 21 грудня 2012 р.

Friday Quote



Don’t worry if it doesn’t work right. If everything did, you’d be out of a job
                                                      - Mosher’s Law of Software Engineering


четвер, 20 грудня 2012 р.

Java for ARM processors


Oracle випустив Developer Preview версію Java для ARM процесорів. Тепер всі, хто бажає, можуть поставити Java SDK8 яке також включає JavaFX. Oracle також просить всіх лишати свої відгуки на їхньому фідбек форумі

вівторок, 18 грудня 2012 р.

Springs VS JEE


Зачотне відео стало доступне зі столиці: початок, фінал

Ваші думки на цю тему?
Доречі, як у Львові ситуація з протистоянням Spring vs JEE? невеличке опитування, результат буде перед новим роком




неділю, 16 грудня 2012 р.

Spring Framework 3.2 GA


13 грудня був оголошений вихід в світ Spring Framework 3.2 GA

Посилання на сторінку оголошення: 
http://blog.springsource.org/2012/12/13/spring-framework-3-2-goes-ga/

Посилання на документацію і новинки 3.2:
http://static.springsource.org/spring-framework/docs/3.2.0.RELEASE/spring-framework-reference/html/new-in-3.2.html

ПС. Також хочу нагадати, що ми всіх чекаємо на нашій зустрічі 25 грудня.
Деталі: http://jug-lviv.blogspot.com/2012/12/17-java-user-group-java-8-lambda.html

пʼятницю, 14 грудня 2012 р.

Java EE 7 Community Survey Results!


На початку листопада, Оракл раптово вирішила провести опитування серед розробників, щодо  фіч, які б ті хотіли побачити в Java EE 7. Але розпіарити його певно забули... в опитуванні взяло участь аж 1100 розробників (!). Ледь більше тисячі - це ж капєць як мало!
Короче, на основі такої репрезентативної вибірки були отримані результати (є картинки)

Народ підтримав головним чином веб-сокети та JSONP





Friday Quote


 First, solve the problem. Then, write the code
                                                                                     
                                                                                     - John Johnson


Fridays Fun




четвер, 13 грудня 2012 р.

17-та зустріч Java User Group. Java 8 Lambda


Запрошуємо  Всіх  на передноворічну зустріч Java User Group, яка відбудеться  25 грудня (вівторок) о 19:00!

За адресою: Героїв Упа 73, кафе "Де Густо"

Компанія Conscensia гостинно запросила нас для проведення нашої зустрічі.

На зустрічі будуть обговорюватись 2 теми:
- JUG Lviv.(тема для розігріву) Куди рухатись дальше2. Прошу прийти з побажаннями/пропозиціями
- Java8 Lambda.(тема вечора) Приклади використання, порівняння з аналогами.

 Доповідач: Юрій Шуліга

+ подарунки від приймаючої сторони


П.С. Велике прохання, заповнити форму - інформація потрібна для підрахунку учасників зустрічі.




середу, 12 грудня 2012 р.

The 2012 Android Developer Survey


Google проводить Android Developer Survey. Відповіді на питання можна залишити на ось цій формі. Опитування закінчиться в неділю 16-го грудня тому поспішайте. Результати ми викладемо на блозі як тільки вони з'являться



вівторок, 11 грудня 2012 р.

The future of GWT. Report 2012


Впевнений що ті хто цікавляться розробкою на GWT чули про такий фреймворк як Vaadin. Протягом 2012 року розробники цього фреймворку робили опитування на тему The future of GWT. Його можна отримати зареєструвавшись на сайті або переглянути на нашому блозі

Java Collections. Inside


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


Якщо маєте цікаві посилання - викладайте в коментарях!


понеділок, 10 грудня 2012 р.

Використовуйте краще. IntelliJ IDEA


Навздогін до новини про вихід нової версії  IntelliJ IDEA (захотілось написати):
 
Історично склалось, що в Україні більшість Java девелоперів використовують Eclipse.

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


Хочу навести декілька причин дял того, щоб подивитись навколо і спробувати використовувати не те, що "історично склалось", а те, що краще.

В цій статті хочу показати чому я в більшості проектів використовую IntelliJ IDEA 11.1.4(мігрую на 12 )

Отже.  IntelliJ IDEA - це платна IDE, яка мусить бути на голову кращою за безкоштовні. Ціна її складає $199. Я почав своє використання IntelliJ IDEA з Community Edition, яка є 100% безкоштовною і має 80-90% функціоналу платної версії.



пʼятницю, 7 грудня 2012 р.

spring everywhere


продовжуючи традицію околоспрінгових релізів -
осьміножка спрінга засовую свої щупальця в самі пікантні місця, на цей раз добралися до зеленого чоловічка http://www.springsource.org/spring-android/news/1.0.1-released (Spring for  1.0.1 Released )

Friday Quote



The First Rule of Program Optimization: 
Don't do it. 
The Second Rule of Program Optimization (for experts only!): 
Don't do it yet.
                                                        — Michael A. Jackson


Fridays Fun




четвер, 6 грудня 2012 р.

IntelliJ IDEA 12 has been released


IntelliJ IDEA 12 Reveals the Darker Side of Productive Coding

Компанія JetBrains випустила нову версію oднієї з найпопулярніших Java IDE IntelliJ IDEA 12 .

Цього разу Java програмістам пропонується перейти на "темну сторону" сили продуктивного програмування.

Посилання на сторінку IDEA http://www.jetbrains.com/idea/
Посилання, щоб дізнатись, що нового http://www.jetbrains.com/idea/whatsnew/index.html
Посилання для скачування Community і Ultimate Edition http://www.jetbrains.com/idea/download/index.html
Посилання на ціни http://www.jetbrains.com/idea/buy/index.jsp

середу, 5 грудня 2012 р.

Утиліти Linux на Android


Adam Outler продемонстрував, як встановити BusyBox на Android без рутування пристрою.

Що таке BusyBox?

Це невеликий набір найбільш популярних лінуксових утиліт, який призначений для встановлення на вбудовані системи з обмеженими ресурсами - "The Swiss Army Knife of Embedded Linux". В списку інструментів є такі потужні засоби: find, grep, awk, vi, wget, ifconfig, mount, kill. Повний список можна уточнити на сайті.

Як встановити?

Звичним чином BusyBox можна установити через Play маркет, але тільки за умови, що телефон рутований. Adam обійшов цю проблему просто за допомогою adb. Для цього потрібно виконати пару команд:
  • Завантажити файл busybox на локальну машину.
  • Перекинути його на телефон:
$ adb push ./busybox /data/local/tmp
  • Перейти в середовище телефону:
$ adb shell
  • Зробити файл виконуваним:
$ chmod 777 ./busybox
  • І власне встановити:
$ ./busybox --install

Що можна з цим робити?

Adam для прикладу установив собі додатково gсс, g++ і скомпілював C++ програмку. Відео з інструкцією:




Spring Integration 2.2.0 GA and STS 3.2.0.M1 has been released


3 Грудня Spring випустив нову версію Spring Integration 2.2.0 GA і STS 3.2.0.M1

Посилання на додаткову інформацію:



вівторок, 4 грудня 2012 р.

New Google Maps Android API


Yesterday was released new version of Google Maps Android API
So developers have got few crucial features like Map Fragments and indoormaps. And as for me the most valuable thing is new API uses vector-based map. 
You can read more on android dev blog or official page .

Android. ADT Bundle.


Нещодавно випала нагода "підрівняти" одну андроїд аплікацію. 

Я як не надто досвідчений Android девелопер, відкрив гугл і почав шукати гайд: "Як проінсталювати середовище".
Так як, колись вже цим займався - знав, що не все просто.

Наткнувся на  ADT Bundle від Google.

Чудова річ, яка зразу з коробки має все в собі. Потрібно тільки розпакувати і запустити.

Ось посилання на сторінку для скачування: http://developer.android.com/sdk/index.html

ПС. Якщо Ви маєте досвід і трішки бажання - шукаємо автора для покриття андроід напрямку.

ВІДГУКНІТЬСЯ !!! :)






понеділок, 3 грудня 2012 р.

Книги, які повинен прочитати кожен Java програміст.


Цікаві стаття зі списком книжок, з прив'язкою до рівня.

http://habrahabr.ru/post/153373/


Щоправда я б ще порадив прочитати про:
  • Spring
  • Maven
  • JEE6/7
  • Continuous integration
На мою думку, без цих речей не можна, або не можна буде найбищим часом жити .

Також було б цікаво, а що/про що Ви б порадили прочитати?

Mars code. Curiosity



Як був написаний код, який  був потрібний для 1 використання на величезній відстані від землі...

Посилання на вебінар:
https://www.usenix.org/conference/hotdep12/tbd

четвер, 29 листопада 2012 р.

Google запровадив стипендію для дівчат.


Google запровадив стипендію імені Аніти Борг для дівчат студентів на 2013/2014 рік.

Інформацію про стипендію можна знайти тут

середу, 28 листопада 2012 р.

JUG рух в Україні


Як вже було писано сьогодні - в Україні, а саме в Дніпропетровську,  з'явилась нова JUG. Є ідея періодично обмінюватись доповідачам з іншими групами. Отож, якщо хтось має бажання з'їздити з доповіддю в Київ, Одесу, Дніпропетровськ або приїхати до нас у Львів - ласкаво просимо.
Пишіть на нашу скриньку jug.lviv@gmail.com або лишайте коментарі в темі.


JUG Дніпропетровськ



Сьогодні відбудеться перша зустріч JUG Дніпропетровськ.

http://dou.ua/calendar/2569/

Ми вітаємо Дніпропетровськ і сподіваємось, що виросте, ще одна велика Java група.

ПС. На данний момент (як я знаю) активно існують 3 JUG: Київ, Одеса і Львів + звичайно Дніпро.

вівторок, 27 листопада 2012 р.

REST service and Android client


Some time ago I tried to develop pet application with Guice+Restlet and deploy to GAE. The main idea was to expose several REST services and access to them from android and web clients. I didn't finished it due to lot issue with restlet. So I decided trying MVC REST and spring android-rest-template. It works wonderful. Just few lines and that's it. As usual I run server part on GAE
This is example of my REST service




And here you can see corresponding android client




So if you need build REST service and call it from android app, I recommend to use given spring solution

String and memory leaks



String and memory leaks


Думаю всі вже знають, що String об'єкт є трішки складнішим за char масив. І для покращення роботи з стрінгами в джава поробили всякі цікаві речі, як String pool  - розроблений щоб повторно використовувати ті самі об'єкти а не створювати кожен раз нові, Інша оптимізація це додавання меж і кількість на об'єкт. Про що і піде мова далі.

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

Як приклад можна розглянути наступний код:




понеділок, 26 листопада 2012 р.

Java EE 7 Feedback Survey


Якщо ви користувались/тестували ранні релізи Java EE 7 у вас є унікальна можливість допомогти Oracle зробити Java EE 7 кращою.

Опитування тут

Реліз Java EE 7 є планований на весну 2013 року.

https://blogs.oracle.com/theaquarium/entry/java_ee_7_roadmap

Scala.Twitter


Twitter опублікував документацію/книжку/уроки Scala.(рос)

Опис уроків:


Основы

    Переменные, функции, классы, методы, наследование, try-catch-finally. Программирование ориентированное на выражения

Основы языка. Продолжение

    Case классы, объекты, пакеты, apply, update, Функции как Объекты (единый принцип доступа), сопоставление с образцом.

Коллекции

    Списки, Карты, функциональные комбинаторы (map, foreach, filter, zip, folds)
Сопоставление с образцом и функкциональная композиция
    Еще больше функций! Частичные функции, еще больше сопоставления с образцом

Основы типов и полиморфизма

    Основные типы и полиморфизм типов, вывод типов, изменчивость, пределы, квантификация



неділю, 25 листопада 2012 р.

WEBINAR: HARNESSING THE POWER OF NOSQL IN SPRING DATA


Черговий вебінар від Spring  відбудеться 29 листопада о 17.00

Посилання на опис тут
Посилання на реєстрацію тут



Java Day 2012. Короткий огляд





четвер, 22 листопада 2012 р.

Google Cloud Endpoints


Google  продовжує розвивати інфраструктуру свого хмарного сервісу AppEngine
В тестмоді з'явились так звані Google Cloud Endpoints. Цей функціонал дозволяє швидко і просто створити REST і RPC API на AppEngine. Підтримка Cloud Endpoints з'явилась також на останньому релізі Google Plugin Eclipse
Деталі про Google Cloud Endpoints можна прочитати ось тут
Реєстраційна форма на Google Cloud Endpoints знаходиться тут
Детальніший опис, як працювати з Google Cloud Endpoints можна знайти тут

"В догонку". Zfort. Харків


Як не сумно, але сьогодні ще декілька людей вирішили виїхати з України.
http://dou.ua/lenta/news/v-zfort-prishlo-pokrashennya/


До цього згадалось:
http://blog.micromarketing.ru/advice/9-point-5-rules-fot-it-business-in-russia/



Соціальна ініціатива.


Львівська ІТ-спільнота об’єднала свої зусилля для спільної акції

для онкохворих діток до дня Святого Миколая.

Запрошуємо Вас приєднатися!

Мета - зібрати кошти на гематологічний аналізатор для «Чорнобильської лікарні».

Акція триває до дня Св. Миколая, до 19 грудня


Ціна питання - 277 тис грн (геманалізатор і реактиви для роботи на 3 місяці).

-Переказавши гроші на рахунки Благодійного фонду «Крила Надії», будь яким зручним для Вас способом (УВАГА! В призначенні кожного платежу вказуйте: «Благодійна пожертва,               ІТ-Миколай»)
Реквізити:
http://krylanadiyi.org.ua/info/rekvizyty/
Реквізити для переведення коштів на рахунок у ПриватБанку (можна перевести з Приват24 або в будь якому відділенні банку, або через термінали Привату):
БФ «Крила надії»
Західне ГРУ ПриватБанку м. Львів
МФО 325321
ЄДРПОУ 35620901
Рахунок 26000060442841
Призначення платежу: Благодійна пожертва, ІТ-Миколай

Також реквізити Кредобанку, для платежів з-за кордону, електронні гаманці – все за лінком:
http://krylanadiyi.org.ua/info/rekvizyty/
-    Підтримавши сторінку акції у фейсбуці (https://www.facebook.com/ITMykolay)
-    Розказуючии друзям та знайомим
-    Поширюючи інформацію про акцію
Звітування по електронних платежах буде проводитися кожні 3-4 дні на сторінці у фейсбуці, звіт надаватиме БФ «Крила Надії».

Пам’ятайте, кожна гривня важлива для спільного результату. Маленька пожертва – теж пожертва і вона може врятувати життя.
ТИ можеш врятувати життя! ТИ можеш зробити свою зміну!

середу, 21 листопада 2012 р.

Webinars. IBM WebSphere ESB and Salesforce


IBM WebSphere ESB 21 листопада і 5 грудня 2012 р., о 17:00

Частина 1 (21 листопада)

· Introduction
· EAI evolution: P2P->MOM Hub->ESB
· ESB purpose and functions overview
· Components: Mediator VFTER (validate, filter, transform, enrich, route)
· WebSphere ESB example

Частина 2 (5 грудня)

· Service Mapping and routing (UDDI)
· ESB frameworks and standards:
· JBI
· OSGI
· SCA


Реєстрація: http://www.exigenservices.ru/webinars/esb 

Salesforce




Free and Open Web. Google. Take Action.


Google. Take Action. https://www.google.com/takeaction/

Проголосуй за вільний і відкритий веб.

вівторок, 20 листопада 2012 р.

Oracle Java Олімпіада


Oracle організовує Java олімпіаду для студентів у віці до 24 років.

Попередня реєстрація закінчиться 30 листопада.

Олімпіада буде проходити в 4 етапи.
Перший етап буде заочним і проходитиме з 1 по 15 грудня 2012 року.

Деталі можна знайти тут:  http://world-it-planet.org/projects/competition_detail.php?ID=41462&sphrase_id=3580





понеділок, 19 листопада 2012 р.

BigData with Pig


Apache Pig - це інструмент для швидкого створення програм на основі алгоритму мап-редюс,  використовує Hadoop на нижньому рівні. Як і Hadoop, є породженням корпорації Yahoo!
В основі до швидкого написання мап-редюс програм лежить використання скриптової мови Pig Latin. Ви пишеte лише відносно пpостий скрипт на SQL-подійбній мові навіть не замислюючись особливо над мап-редюс підходом, далі використовує Піг для того щоб виконати цей скрипт, який створює мап-редюс джоби, конфігурить і запускає їх. І він ще має вбудований оптимізатор, який оптимізує ваший скрипт, якщо ви раптом натупите!



Звичайно, на відміну від звичайно SQL вам знадобиться куди більше ф-цій для обробки даних зважаючи на те що схемою тут і не пахне. Для вирішення цього завдання Піг пропонує вам можливість написати власну ф-цію обробки даних за допомогою механізму User Defined Function (UDF), або взяти вже готову з апачівського PigBank чи Linkedin Data-Fu
Підозрюю, що у декого виникне підозра - "Піг скрипт має виконуватися значно повільніше". Насправді недовіра до Пігу доволі висока, як і до всього нового, та він себе вже добре зарекомендував в таких корпораціях як Yahoo!, Twitter, Linkedin, Nokia (o_O). і як показує їх практика, Піг скрипти лише трохи поступаються натівним мап-редюсам, але при цьому займають у 20 развів менше коду та вимагають у 16 раз менше часу на імплементацію. Хоча слід признати що 20% у швидкості ви певно втратите

Реальний приклад використання Pig: стаття, що я нещодавно прочитав і яка здалася мені доволі цікавою. Ідея полягає в тому, що за допомогою Піг скрипта та музичної бази даних ми спробуємо знайти екзотичні та популярні пісні з різних куточків світу. Кого зацікавило, раджу
http://blog.cloudera.com/blog/2012/08/process-a-million-songs-with-apache-pig/ (ті хто дочиають до кінця - молодці і зможуть насолодитися рідкісними африканськими піснями)

16-та зустріч Java User Group. Звіт


15-го листопада пройшла 16-та зустірч JUG Lviv.

Цього разу вона була достатньо велелюдною. Близько 60 людей відвідало нашу зустріч.
Ми дуже вдячні компанії Eleks за гостинно надане приміщення та Віктору Гайдіну за цікаву доповідь.

Також на зустрічі були представленні плани і побажання для розвитку JUG L`viv.

Також нагадую, якщо Ви маєте бажання допомогти в розвитку групи - пишіть на пошту групи jug.lviv@gmail.com чи мені особисто bohdan.bandrivskyy {at} gmail.com.

Будь-яка допомога - зробить групу цікавішою і дасть можливість розширити діяльність її в нових напрямках.



пʼятницю, 16 листопада 2012 р.

Java Day 2012


Цього року Java Day 2012 в києві в готелі "Русь".

Отже як це було:

Реєстрація була безкоштовна для людей, які завчасно реєструвалось. Це справді порадувало :) (халява :) ). В останній тиждень вона коштувала здається 300грн.

Поїздака. Укр залізниця була в соєму репертуарі - квитків зі Львова до Києва не було і прийшлось купувати зі Стрія!!! до Києва. Де тут логіка - незрозуміло... :)



четвер, 15 листопада 2012 р.

Java User Group - уже сьогодні!


Ми знаходимось на вул. Наукова, 7 корп. 7г.

На вході повідомите, що ви на Java User Group.

На всяк випадок контактний номер людини на місці – 0637247301 (Олена).

Вам необхідно доїхати до нічного клубу МІ100. Якщо дивитись на вхід у нічний клуб МІ100 то його слід обійти справа, пройти стоянку і за шлахбаумом повернути ліворуч і пройти в кінець, там побачите велику стоянку для велосипедів і навпроти неї вхід із маленькою табличкою eleks =)

Чекаємо вас на 19:00! Прохання не запізнюватись!

понеділок, 12 листопада 2012 р.

Functional Programming Principles in Scala



Coursera: Functional Programming Principles in Scala Review

Думаю ні для кого не секрет є те, що дуже великої популярності набувають всілякі онлайн курси. Спробуємо провести коротенький огляд найбільш очікуваного курсу цієї осені, а саме fp (functional programming) principles in Scala. 

Цей курс зацікавив багатьох з ряду причин:



суботу, 10 листопада 2012 р.

16-та зустріч Java User Group. Apache Hadoop


Запрошуємо  Всіх  на після ювілейну зустріч Java User Group, яка відбудеться  15 листопада (четвер) о 19:00!

За адресою: Наукова 7г, 6 поверх, тренінг-центр. 

Компанія Eleks гостинно запросила нас для проведення нашої зустрічі.

На зустрічі будуть обговорюватись 2 теми:
- Зміни в JUG Lviv.(тема для розігріву) Куди рухатись дальше.
- Apache Hadoop.(тема вечора) Причини виникнення, історія, приклади використання і т.д. Доповідач: Віктор Гайдін  




П.С. Велике прохання, заповнити форму - це полегшить і пришвидшить прохід людей через охорону фірми.




четвер, 8 листопада 2012 р.

Java Magazine Nov/Dec 2012





Став доступний новий випуск Java Magazine Nov/Dec 2012, основні теми що освітлюються:
  • Java на службі агpapного бізнесу Нідерландів
  • Get Started with Java SE for Embedded Devices on Raspberry PI
  • Exploring Lambda Expressions for the Java Language and the JVM
  • Building Actor-Based Systems Using the Akka Framework




середу, 7 листопада 2012 р.

Devoxx 2012


З 12 по 16 Листопада в Антверпені (Бельгія) буде проходити найбільша не комерційна Java конференція в європі (а може і в світі)

Якщо випадково хтось збираєтсья відвідати - зголосіться!!!

На сайті конференції будуть викладені матеріали: http://www.devoxx.com



вівторок, 6 листопада 2012 р.

Selenium WebDriver - тестування web-сторінок з Java


Selenium вже давно користується заслугованою популярністю серед багатьох розробників, як інструмент тестування веб-сторінок. WebDriver - "новий" селеніум, який дозволяє виконувати інтеграційні тести описані в звичному коді (Java, C#, etc) в різноманітних браузерах чи віртуальному середовищі.




понеділок, 5 листопада 2012 р.

We Need a Programmer for President


Цікава стаття про наступниі вибори в США


Трішки велика і на англійській мові, але вартує прочитати:

http://java.dzone.com/articles/would-you-vote-programmer

неділю, 4 листопада 2012 р.

Вебінар Презентація Spring Hadoop


8 Листопада Spring буде проводити Вебінар по презентації Spring Data для Apache Hadoop

Презинтація розпочнеться о 17.00(укр. час).

Зареєструватись на вебінар і почитати про саму подію можна тут:
http://www.springsource.org/node/3669

Також цей тиждень ознаменувався виходом нового релізу Spring Framework 3.1.3.
Реліз ноути цієї версії спрінга можна прочитати ось тут:
http://www.springsource.org/node/3720




четвер, 1 листопада 2012 р.

EclipseLink ORM Persistence Framework


Для більшості java рограмістів сьогодні Hibernate == ORM. проте є ряд інших, не менш цікавих ORM, які можуть виявитися куди більш підходящим для вашого проекту, ніж улюблений Хібернейт.
Хочу звернути вашу увагу на EclipseLink, який пішов від ораклівського TopLink і сьогодні являє більш ніж підтримку персістенсу через JPA, але також JAXB, JCA та SDO (простими словами - можна працювати з XML, веб-сервісами чи но-скл базами). Але я сфокусуюся саме на ORM стороні цього рішення, і без дискутування чому ORM це погано і треба обережно совати його до свого проекту:)
Пропоную розглянути, як EclipseLink може допомогти, якщо на проекті Оракл СКБД



JUG Reset. Місяць перший. Результати. Road map.


Отже, що було зроблено:

- 22 статті за жовтень було опублікованоь
- 1052 унікальних заходів на статті (к-сть заходів на сам блог більша. Деякі статті можна прочитати не відкриваючи детальніше).
- 32 коментарі до статей
- Знайшли компанію, яка погодилась зробити блог з більшими можливостями ніж теперішній.

Планується:

- продовжувати публікувати 3< пости в тиждень
- провести зустріч в листопаді для обговорення змін. На даний час тема і місце не визначені.
- розширення діяльності групи з просто збирання раз на 1-2 в місяць. (Деталі на зустрічі).
- пошук спонсорів. Якщо знання не приваблюють людей - будем "насильно" зганяти народ, призами і футболками, на зустрічі :)

Потрібно:

- Відгуки про зміни !!!
- Пропозиції. Що змінити чи додати.

- Активність!!! Ні я ні Андрій самі це повноцінно не задрайваємо. 15 хв в тиждень від Вас і к-сть та якість статтей виросте в рази. Якщо Ви не знаєте, як саме допомогти - звертайтесь. Є пул статтей, які б хотілось мати і є матеріал, але бракує часу.


ПС. Потрібні ВАШІ відгуки!!!

вівторок, 30 жовтня 2012 р.

Обновлено. Android 4.2. Сенді зірвала презентацію, але не вихід в світ.


Google "презентувала" Android 4.2 і Nexus 4. Точніше сама презентація була зірвана, але ціла лінійка Nexus була представлена.

Дуже потішили ціни на девайси. І в принципі загальний прогрес і рух платформи.



LG Nexus 4
Характеристики:



неділю, 28 жовтня 2012 р.

Java Concurrency and Volatile


 

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

Отже до задачки, спочатку не запускаючи програму подумайте що станеться з таким кодом

1.   public class ConcurrencyFun implements Runnable  
2.   {  
3.       private String str;  
4.       void setStr(String str)  
5.       {  
6.           this.str = str;  
7.       }  
8.       public void run()  
9.       {  
10.          while (str == null);  
11.          System.out.println(str);  
12.      }  
13.      public static void main(String[] args) throws Exception  
14.      {  
15.          ConcurrencyFun fun = new ConcurrencyFun();  
16.          new Thread(fun).start();  
17.          Thread.sleep(1000);  
18.          fun.setStr("Hello world!!");  
19.      }  
20.  }  
Більшість мабуть скажуть що код буде чекати 1 секунду і виводити повідомлення "Hello World!". Новостворений (поороджений) потік чекає поки str не null  і виводить його. Основний потік запускає породжений(?) потік, чекає 1 сек і вставляє в str значення "Hello World!". Виглядає все просто? Чи не так?