Monday, December 8, 2014

Art or Technology

  Painter: Giuseppe Arcimboldo,   The Potrait of Rudolf II. Arcimbold
        That painting seems the  reflection of modularity 







Painter: Jan van Eyck, Arnolfini Portrait
That painting could be accepted as the first selfie ever :)





Sunday, November 16, 2014

education in software engineering (I)

Before starting to teach programming to the students, coding standards should be explained at  the programming related courses.

Programming looks  like a brush  in the painting. Patterns, designs could be changed one developer to another. In my opinion some conventions  could be same in programming for each developer. When you look at the source code, the source code seems to be any poem of the E.E. Cummings, It is not a creative thinking; It could be reflection of the selfishness :)


Sample document for Java programmers:

http://www.oracle.com/technetwork/java/codeconventions-150003.pdf




Wednesday, October 1, 2014

Easy ways of deployment to the Weblogic Server

Great document: 

http://docs.oracle.com/cd/E23943_01/web.1111/e13702.pdf

Deployment Tools for Developers section explains the 5 ways for deployment of projects to the server automatically .


Monday, September 29, 2014

3 important things 4 everyone who wants to be a Software Engineer/Code Composer/Programmer/Coder whatever you call :)

I think not 10, 3  advices  are adequate to you.

Advice 1: Read Read Read
Advice 2: Try to run code samples
Advice 3: Think how could you extend the API/LIB  that you are using

Once upon a time

We had software projects which could be saved into 3½-inch floppy disks.

We could copy compact discs from one to another  by paying 10$ in 1999.





Thursday, September 25, 2014

Java 8

Links:
http://cr.openjdk.java.net/~mr/se/8/java-se-8-edr-spec.html
http://ttux.net/post/java-8-new-features-release-performance-code/

Book: Java 8 Lambdas by  Richard Warburton


My favorite section is Lambda-Enabled Design Patterns. It was surprise to me because I did not expect to read anything about the design patterns.
In addition:
Every code line works successfully. It is hardly seen in many books. Have you ever used  the static imports? With the examples of this book, you would be :).

As everybody knows It isn't your Grandmother's Java, anymore!


Book: Java SE 8 for the Really Impatient by Cay S. Horstmann


Streams, Time API, Lambdas, Java FX and Nashorn JS Engine are explained with samples in this book.



If John Lennon would have been lived, He would have been compose a song for Java 8. 




Wednesday, August 6, 2014

When Your Garbage Collector tells you do not remember me ?

@7th chapter of the Java Performance (by Charlie Hunt,..) 

-XX:+DisableExplicitGC and  runtime results of disabling explicit garbage collection  is explained.

The following link is a reference  for every java developer to learn more VM options. (I think the Java Performance also should be read.)

http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html



Should configuration filenames be hardcoded?

Please imagine one standalone application which uses some xml configuration files, reads them at the startup time & runs own business rules etc.

When we want to create a new  another instance for this app in the same OS

Scenario 1: If you declare file name as constant in the source code, Its imposible to run a new application with different configuration.

Scenario 2: If you declare  config file name such as command line parameter or another way, It is possible to run a new application instance in the same OS.

Actually, Scenarios could be changed according to your purpose.

My note is never give configuration file names as constant/hard coded (whatsoever I think you understood me) in the source code.


Wednesday, July 2, 2014

Streams and Lambdas remind me this quote :)

It is impossible to disagree  :)

“Measuring programming progress by lines of code is like measuring aircraft building progress by weight.”


― Bill Gates

Note: I'm wondering when he said.


Monday, June 2, 2014

Java Oriented Favorite Book List

Effective Java

“I sure wish I had this book ten years ago. Some might think that I don’t need any Java books, but I need this one.”

—James Gosling, fellow and vice president, Sun Microsystems, Inc.

Java Concurrency in Practice



Java Puzzlers



Real World Java EE Patterns




Working Effectively With Legacy Code



Refactoring: Improving the Design of Existing Code




Java Performance




Well Grounded Java Developer



Core Java and All



If you are thinking how can I learn Java the following is best one:
Too many friends of mine  who are C/C++ developers started to learn the Java PL with this book ;)



what is yours?

Saturday, May 24, 2014

GUI & Framework?

When it comes to Framework for UI development, there are too many.
Frameworks can be  useful or teach-full.

:) Sometimes it requires debugging in the source code and you learn what it is.
:) Sometimes developer asks this question: Why it is not working? Then asks to Google.
:) Sometimes the second search results never adequate for developer's  questions and developer should read specifications etc. 

I want to "sometimes" should transform into "rarely" :) for UI development.

This opinion could be based on the reason of restarting to the GUI development after a decade :-)

?


Wednesday, May 14, 2014

Backward Compatibility

If you are a backward compatible developer,it is possible that you can code using Oracle 9i PL\SQL {10g, 11g, 12c}or  ASP - ASP.NET or  Pyton, Grovy, Ruby, Spring 2.5or Spring 4.0 or  JDK 1.2.1, JDK 1.4, 1.6 or so on.


This definition is my present to the SE World instead of calling such developers as Senior Developer(s) ;)

Sunday, April 27, 2014

Good things

One of the Mozilla Sessions was about Women in Technology @FOSDEM2014, the speaker was Priyanka Nag. She shared the rates about the number of women in software industry. The Increasing rate is %11 from 2002 to 2013. (When we look at the ACM publications' increment rate for women researchers; the rate seems to be %27 in 52 years.) %11 is very interesting, because I expected to see this rate is greater than %11. 

This rates  are very helpful for researchers and "number of 'Women in Technology'" should be one of the research areas in sociology and psychology. In the conferences, speakers are talking about those rates but origins of the speakers are  in engineering or computer science related. This sessions should be supported with anthropologists. Their opinions and studies provide big benefits for attracting girls' intention to the computer science and technology.

It is good to see  the world's biggest companies support to women in technology/research, Google seems to be a pioneer :).

Big applauses are sent to the Google!


When I see this announcement, I want to share.





Creative Commons License
Author's comments in this blog are licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.



Tuesday, April 15, 2014

Methodologies for Development by using Hibernate Framework:-)

Many different ways can be available for starting to the Hibernate.

#1 Copy Paste Developer's Approach

Search on the net & get code samples. 

#2 Asking

Asking friends who are already know the Hibernate. Learn what it is. Go to Way#1

#3 Ask Google

Search on the Google. According to result, start with the videos and continue with books,blogs, pdf, ppts, forums...

#4  hibernate.org 

Go to web site, learn what the library supports then go to #3


What is your favorite?





Tuesday, April 1, 2014

Sometimes :P

Sometimes; you assume it is friday, but it is wednesday.

Sometimes; you assume it is wednesday, but it is friday.

Sometimes; Deadline of task ends on Monday(Soft Friday), not Friday.

Sometimes; You deploy new application to the local web server and it couldn't be deployed; you read framework's book etc etc; so ; reason of problem is because of wrong folder's name, not framework.

Lastly,
If you work abroad, most of the mistakes happened because of Country's national character set.


update:
Sometimes happiness is seeing "build successfully" words on the console :-) at the beginning of tomorrow 

What is yours?

Sunday, March 23, 2014

PrimeFaces CookBook

This is the first book as I know about PrimeFaces Framework. As I saw on the web site of PrimeFaces; two new books were added to the PrimeFaces Family. :-)

I bought this book from the following link:
http://www.packtpub.com/primefaces-leading-jsf-component-suite-cookbook/book

The book starts with a very general information about Ajax and an important links for Primefaces. The authors also give their recommendations about forgetting things when preparing xhtml file content and CSS to the reader.

However this book gives you many useful samples for some of the framework's components, all of the components of this framework can be seen on the web site of the PrimeFaces.


I want to list an important web sites for developing web apps with using PrimeFaces.

http://docs.oracle.com/javaee/6/api/javax/faces/component/UIComponent.html

https://github.com/ova2/primefaces-cookbook
http://code.google.com/p/primefaces/wiki/PrimeFacesLocales

I feel that;
If this framework combined and merged with the Ibatis or similiar data mapping framework; ColdFusion developers seem to be familiar with this framework very quickly:-).

My Suggestion to universe :
It is nice to have that Netbeans or Eclipse IDE support(s) component visualization such as Drag-Drop Components to the xhtml file.





Wednesday, March 12, 2014

Unbearable Lightness of Using ThreadSafe Objects

Being psychologically @ThreadSafe annotation may "look and feel safe" Effect at the first sight for any Java code.

If your threads use same  variables for accessing/modifing purpose and you miss this issue, your threads can be confused :-).

Sometimes; you trust in web servers' architecture for writing thread safe applications. It's a good way unless your application contains cached objects that might be used by your app's transactions .




Sunday, February 23, 2014

For Sunday Reading

10 years ago, we prefered writing our new applications in Java instead of C++/C,  because it is
platform independent, easy to code, no need for writing destructor (thanks to GC), libraries and  performance results were very close to C++.

But today, everthing  changed :) in many aspects.

Reading the following article made a flashback effect on me:

            http://stevewedig.com/2014/02/17/why-and-how-i-write-java/

I'm wondering 10 years later, why we will use Java?

:-)


Image source: www.123rf.com

Saturday, February 22, 2014

101 Design Ingredients to Solve Big Tech Problems

Until the section 5, you read 101 good ingredients and their illustrations. Each of them starts with a quote and I think, after reading each item, check it's drawing.  But I think you couldn't because  Drawings are at the  left side of the page. Unconsciously, I started with checking cartoons for each ingredient.

Mentioned design ingredients not only valid for tech problems. From the education to social sciences, in every area, many recommendations and Author's comments could be very helpful. 

Author(Eewei Chen) has complied with the own rules and keeps this book simple and very helpful. 

My last note not completely related with this book, I want to share:
  I don't understand why  CTRL and FN  keys are interchanged  for some new laptops. 
  There is a confliction with Ingredients 2: Understand customer needs. 
  I think this rule is omitted for the Lxxxxx's laptops. 

Friday, February 21, 2014

Java & Art & History

HISTORY OF ART  & REFLECTIONS ON HISTORY OF JAVA

After the course on Art History:




"I would rather excel others in the knowledge of what is excellent than in the extent of my powers and dominion." Alexander the Great




ART
Java
Gives messages on the sly.
GIVE messages via JSRs/BOOKS/BLOG/EVENTS/MAILGROUPS
Next  year  never be like present
Next  year  never be like present
One Trend triggers the others
One Vote triggers the others








Sources: 
http://en.wikipedia.org/wiki/Gothic_art
http://en.wikipedia.org/wiki/Write_once,_run_anywhere





The Da Vinci Machine Project 

a multi-language renaissance 

for the Java™ Virtual Machine architecture

http://openjdk.java.net/projects/mlvm/




Modular Art -  Modular Java :)



Creative Commons License
Author's comments in this blog are licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Thursday, February 13, 2014

Raspberry PI without monitor


If you have  wireless modem(idle) , you can install your intranet at your home.

Without using display-monitor, you can connect your raspberry  by using  remote connection.


Monday, February 10, 2014

The Well-Grounded Java Developer: Vital techniques of Java 7 and polyglot programming


Up-to-date Development and Java 7 enhancements are mentioned  in friendly style by Ben Evans and Martijn Verburg.

Book starts with the Project Coin and it's scope.  The summary sections're (at the end of the each chapter) added very good value to all chapters.  
You could read exhaustive explanations of NIO.2 and DoI.

Topic, as  always, must come to Modern Concurrency: The Synchronized keyword is explained truly and  deeply :). After Java 5, the concurrency in Java was started to be more useful and easy for managing threads. Authors give suggestions for migration from the earlier versions of Java 5.


If you have not any idea about JVM langs, you could start to read about general concepts of Groovy, Scala and Clojure  at the second half of this book.



Summary

When you read this book, you  see and discover most of the stars in the Java and Java- Oriented-Development Galaxy. 






Creative Commons License
Author's comments in this blog are licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.





Sunday, February 9, 2014

JVM Web Frameworks with statistics

Last week, VirtualJUG online seminar was about JVM Web Frameworks.

When you watch to the following links, you can see how web frameworks' trends are changed in two years.

2012
http://www.slideshare.net/mraible/comparing-jvm-web-frameworks-spring-io-2012

2014
http://www.youtube.com/watch?v=ygW8fJVlDxQ


Monday, February 3, 2014

Fosdem 2014 as I saw it

Fosdem2014  was very excellent good organization.

Saturday

I was @ %85 percent Java and %15 Mozilla Sessions.

My labels as follow:

Keep Calm and wait for Java 9

Enjoy with Charming Java 8

Simulator & Developers!

Deoptimization

Shenandoah: http://rkennke.wordpress.com/.

Java Intrinsic

Polyformic Intrincis

jogamp.org


Sunday

%20  IoT and %80 NoSQL Day for me. I expected to join Js also but room was full.

No slogan for sunday only keywords :-)

   Couchbase

   Cassandra

Michael Laing's session was extremely wonderful. I hope the video publishment will exist for this session.

Thursday, January 23, 2014

ORACLE_HOME OC4J and ORACLE_HOME users

My dear OC4J Server for WinOS needs two environment variables:ORACLE_HOME and JAVA_HOME.

For instance:

C:\oc4j_extended_101350  for ORACLE_HOME
C:\javas\jdk1.6.0_23 for JAVA_HOME


When you make this setting, the other programs which use ORACLE_HOME could not be initialized.

After doing installation/configuration for the Environment Variables, never forget what you did :-).


Wednesday, January 15, 2014

Suprisingly well :)

If you're dealing with Java and related Oracle products; 
If you're interested in Mr. Gosling's score card for Netbeans, Java, Solaris ... :)  , you can read in the link below:





I also wonder his opinion about Java FX. I really want  asking to him, one day :-)

Wednesday, January 8, 2014

Thursday, January 2, 2014

Quotes :)


2014 comes with the quotes, Debuging is always indispensable :-)

"Everyone knows that debugging is twice as hard as writing a program in the first place. So if you're as clever as you can be when you write it, how will you ever debug it?"


"Before software can be reusable it first has to be usable"
- Ralph Johnson

 “If debugging is the process of removing software bugs, then programming must be the process of putting them in.”

Edsger Dijkstra

http://www.quotesdaddy.com/quote/1392952/edsger-dijkstra/if-debugging-is-the-process-of-removing-software-bugs