Hacettepe Bilişim Günleri 2008

HUlogosu Geçen hafta Pazartesi günü(2008.04.14), Hacettepe Üniversitesi Bilgisayar Topluluğu (HÜBİT) tarafından düzenlenen Bilişim Günleri etkinliği için uzun bir aradan sonra tekrar Hacettepe Üniversitesi'ndeydim. Okul zamanlarında benim de çalışma fırsatı bulduğum HÜBİT tarafından düzenlenen bir etkiliğe tekrar katılmak oldukça keyifliydi.

Bu vesileyle ayak üstü de olsa öğrenci arkadaşlarla sohbet etme fırsatı buldum. Genelde sorular bilgisayar mühendisliği kariyer hedeflerini nasıl belirlemeleri gerektiği ile ilgili idi. Bu bağlamda, piyasa eğilimlerinin (ABD için yazılmış olsa da Türkiye için de geçerli olduğu söylenebilir) konu edildiği "Wanted: 10 IT skills employers need today" makalesi fikir verici olabilir. Ayrıca Türkiye'deki imkanları ve genel olarak akla gelen soruları içeren Doç. Dr. Göktürk Üçoluk tarafından hazırlanmış "Bilgisayar Mühendisliğine İlişkin Sıkça Sorulan Sorular" yazısının incelenmesini özellikle tavsiye ediyorum (Yazının "İş imkanları" kısmındaki ücret bilgilerinin güncel olmadığını belirtmek gerek).

Young Turks vs. Jeunes Turcs

I've encountered interesting comment thread on NetworkWorld as reading "5 IT skills that won’t boost your salary" article. User naedrod, has stated his/her opinions by using contrary phrases "Young Turk" and "Dino". Unfortunately, this opinion has caused misconception on the other user. This case and RandomHouse's definition for "Young Turk" phrase, pushed me to think about usages. RandomHouse defines that;

Young Turks, which was the popular name for the Committee of Union and Progress, a revolutionary reformist group that led a successful rebellion in Turkey in 1908 and held power for another decade or so.

In Turkish, we generally use French word for this phrase; "Jön Türk" (Jön = homonym of "Jeune" which means "Young" in French). Therefore, "Genç Türk" which is the exact translation of the "Young Turk" is nonsense, generally (I think, this fact results misconception). Refer to Wikipedia article for further information about "Young Turks".

If you've never failed, you've never lived

YouSort: YouTube Sort by View Count Fix

Update(2008.04.10): Fortunately, YouTube added sort by view count feature again hence, this post is expired. However, I let it remains for possible further reference.

 

Title is very descriptive and it refers to common problem; every YouTube user wants to sort filtered video results by "view count" and there is a trivial solution. Note that, this is not "yet another view count fix entry". If you google this issue, you can access many blog entries about that. However, this fix is relatively more permanent solution.

 

YouTube removed the "sort by view count" feature from its user interface but feature is still available. You can still use this feature (although, this time in less user friendly fashion). After searching at YouTube, append &search_sort=video_view_count at the end of the URL in the address bar and press enter to search again. Hence, results will be view count sorted at this time.

 

In order to make this solution more permanent (easily repeatable), I implemented below solution (Screenshots are from Firefox but steps cover both Firefox and IE - Internet Explorer):

1. Be sure that "Bookmarks Toolbar" is visible by checking View > Toolbars > Bookmarks Toolbar (IE: View > Toolbars > Links).

 

yousort_1 

 

2. Open "New Bookmark" dialog by right clicking Bookmarks Toolbar and select "New Bookmark..." (IE: Favorites > Organize Favorites... right click unused item under "Links" folder and click to "Properties").

 

yousort_2 

 

3. In this bookmark, we want to append &search_sort=video_view_count prefix to current URL and redirect to this new address. We can handle this operation with below JavaScript code snippet.

 

javascript:window.open(document.location + %22&search_sort=video_view_count%22);

4. Give appropriate name (for this case: "YouSort") for bookmark and paste above snippet to the "Location" field (IE: Insert the snippet into "URL" field).

 

yousort_3

 

5. Sort by view count button for YouTube is ready to use. You can use this button at search result pages (IE: Use Firefox ;) ).

 

yousort_4

 

Have fun...

 

Student Autonomous Underwater Challenge

auv9 AUVs (Autonomous Underwater Vehicle) are unmanned, untethered submersible robots that are capable of carrying out missions autonomously. Defence Science and Technology Laboratory (DSTL) which is executive agency of the UK Ministry of Defence, supports AUV development projects of the students. In this respect,  DSTL arranges "Student Autonomous Underwater Challenge - Europe (SAUC-E)" annually.

This year SAUC-E 2008 is to be hosted by DGA (France) and held at IFREMER, Brest, France in 7 - 11 July 2008. Soton AUV of the Southampton University is the winner of the SAUC-E 2007. Comprehensive project list of some organizations can be found here.

(Image source: http://sotonauv.seslink.soton.ac.uk/)

Yazılım Ürün Hattı

Yazılım ürün hattı, tanımlama yoluyla ortak öz varlıklar kullanılarak geliştirilen, belirli bir pazar kesiminin ya da görevin intiyaçlarına yönelik, yönetim altındaki ortak yetenek kümelerini kullanan yazılım-yoğun sistemler kümesine verilen isimdir [1].

YÜH yaklaşımının ortaya çıkmasına yol açan en önemli güdülerden biri de geçmiş yeniden kullanım yaklaşımlarından (Ör: Nesne yönelimli yaklaşım) çıkarılan derslerdir. Bu bağlamda genel kabul gören iki husus aşağıdaki gibi sıralanabilir [2]:

  • Fırsatçı yeniden kullanım’ın (Opportunistic reuse), uygulamada etkin olmadığı görülmüştür. Yeniden kullanım planlı ve zorunlu olarak yönetilmelidir.
  • Aşağıdan yukarıya (bottom-up) yeniden kullanım ile yeni sistemlerin soyut bileşenlerin bir araya getirilmesinden oluşturulması, başarılı sonuçlar vermemektedir. Başarılı yeniden kullanım yukarıdan aşağıya (top-down) yaklaşım gerektirmektedir (Bu tanımlama kısmen aşağıdan yukarı yaklaşım kullanımını dışlamaz).

Bu yeni yazılım geliştirme yaklaşımına geçişin nasıl ele alınacağı da diğer bir önemli konu olarak karşımıza çıkmaktadır. C. Krueger, kuruma faydası ne kadar yüksek olursa olsun, geçiş aşamasında yaşanacak üretim düşmesini ya da durmasını bazı kurumların göze alamadığını belirtmiştir [3].

Geçiş maliyetini en aza indirmek üzere tanımlanmış üç farklı uyum modeli bulunmaktadır [3]:

  • Öngörüsel Yaklaşım (Proactive approach): Geleneksel yöntemdeki şelale (waterfall) benzeri bir yaklaşımdır. Tüm ürün çeşitleri çözümlenir, tasarlanır ve gerçekleştirilir. Köklü ve tümden bir değişimi daha hızlı getirdiğinden bu yaklaşıma büyük patlama (big bang) yaklaşımı da denilir.
  • Tepkisel Yaklaşım (Reactive approach): Döngüsel ya da çevik yöntemlere benzer bir yaklaşımdır. Her bir döngüde bir ya da birkaç ürün çeşidi ele alınır.
  • Çıkarımsal Yaklaşım (Extractive approach): Var olan bir ya da bir kaç ürün YÜH için temel alınır ve diğer ürünler sonrasında dahil edilir.

Kurumların olgunluk seviyeleri, ürün ailelerinin çeşitliliği gibi bir çok etken var olmakla birlikte, tüm gereksinimlerin önceden çok açık belirlenemediği durumlar için en uygun geçiş modelinin “tepkisel yaklaşım” olduğu söylenebilir.

YÜH bağlamında iki temel sürecin birbiri ile etkileşimi söz konusudur [4]:

  • Alan Mühendisliği: Ürünlerin ortaklık ve farklılıklarının belirlenip tanımlandığı YÜH mühendisliği sürecidir. Tanımlanan ortaklık ve farklılıklar, üretim bandının temelini oluşturur.
  • Uygulama Mühendisliği: YÜH’nın alan değerleri (domain artefacts) ve farklılık tanımlarından yararlanarak ürünlerin oluşturulduğu YÜH mühendisliği sürecidir.

Bu iki süreç belirli döngülerle birbirlerini besler ve geliştirir. Aşağıdaki şekil söz konusu döngüleri ve süreç adımlarını göstermektedir.

spl_cycle

YÜH tasarımı hakkında daha fazla detay bu yazı kapsamı dışındadır. Başlangıç aşaması için, M. Matinlassi’nin farklı YÜH tasarım yöntemlerini (KobrA, FAST, FORM, …) karşılaştırmalı olarak incelediği belge’ye [5] başvurulabilir.

 

[1] P. Clements, L. Northrop, (2001), “Software Product Lines: Practices and Patterns”, Addison Wesley.

[2] Jan Bosch, (2000), “Design and Use of Software Architectures”, Addison-Wesley, ACM Press Books.

[3] C. Krueger, (2002), “Eliminating the adoption barrier”, IEEE Software, Volume 19, Issue 4.

[4] K. Pohl, G. Böckle, F. van der Linden, (2005), “Software Product Line Engineering”, Springer.

[5] M. Matinlassi, (2004), “Comparison of Software Product Line Architecture Design Methods: COPA, FAST, FORM, KobrA and QADA”.

UYMK 2008

Bu sene ikincisi düzenlenecek olan Ulusal Yazılım Mimarisi Konferansı (UYMK),  11-12 Eylül 2008 tarihlerinde İzmir'de gerçekleştirilecek. UYMK, iki senede bir düzenleniyor ve ilk konferans 2006 yılında İstanbul'da Yıldız Teknik Üniversitesi ev sahipliğinde gerçekleştirilmişti. Bu seneki ev sahibi ise Ege Üniversitesi.

Konu başlıklarını içeren bildiri çağrısına buradan erişebilirsiniz. Özetlerin gönderimi için son tarih 7 Nisan 2008.