środa, stycznia 02, 2008

Zasoby Javy (najnowsze):

  1. Czytanie danych z Internetu - Reading data from Internet, uwaga można podać parametry do serwera proxy w linii wywołującej np: c:practice>java -Dhttp.proxyHost=xyz.com -Dhttp.proxyPort=8080 WebSiteReader
  2. Korzystanie z silników skryptowych - http://www.javaworld.com/javaworld/jw-11-2007/jw-11-jse6.html?page=5#resources - stosowanie AJAX w applecie. Ajax programing with Java Scripting API.
  3. Bouncy Castle jest dostępny w wersji dla C# (ciekawe)
  4. Potral społeczności JAVA - http://www.jdn.pl/node/1339
  5. Portal zajmujący się sposobami deplojowania Javy - https://deployment.dev.java.net/
  6. Kapitańskie - http://www.captain.at/programming/java/executable-java-application.php
  7. Wczytaj z internetu XML - http://www.developerfusion.co.uk/show/2064/
  8. Portal twórcy JAVA EE - http://www.jaceklaskowski.pl/

niedziela, grudnia 23, 2007

Java to potęga
Ostatnio miałem zamiar sprawdzić w CRL z Sigillum czy przypadkiem jakiś certyfikat nie jest odwołany. Sprawa banalna ale w .NET nie mogłem znaleźć odpowiedniego rozwiązania. Standardowa Java dostarczyła mi odpowiedzi:
package mw.coig;
import java.security.cert.*;
import java.io.*;
import java.math.BigInteger;
// http://www.koders.com/noncode/fidDB6188EED123B04A3091BE8FC202EF1FC41FFF6F.aspx:
public class testCRL{
public static void main(String[] args)
throws FileNotFoundException, CertificateException {
InputStream inStream = new FileInputStream("fileName-of-crl");
CertificateFactory cf = CertificateFactory.getInstance("X.509");
try {
X509CRL crl = (X509CRL)cf.generateCRL(inStream);
BigInteger serialNumber = BigInteger.valueOf(args[0];
X509CRLEntry wynik = crl.getRevokedCertificate(serialNumber);
if (wynik == null) {
System.out.println("Ok");
}
else {
System.out.println("Bad");
}
inStream.close();
}
catch (Exception e) {
// Print out the exception that occurred
System.out.println("Blad : "+e.getMessage());
}
}
}
Wniosek taki: Framework w Javie jest naprawdę bardzo rozległy (obejmuje naprawdę wszystkie potrzebne i nawet trudne do wymyślenia problemy informatyczne), framework .NET też jest świetny ale działa wyłącznie w ekosystemie MS, czego oni nie włączyli (z open source, ponieważ zrobili to po swojemu tego nie ma (a brakuje dużo). Więc do zagadnień otwartych (platform heterogenicznych) najlepsza jest Java, ponieważ pokrywa największe spektrum problemów.

sobota, grudnia 15, 2007

Sobota ranek

Materiały na temat bibliotek pomocnych w tworzeniu PHP ze strony http://www.webdigity.com/index.php/topic,7333.0.10+projects+every+php+developer+should+use.html:

  1. autentykacja HTTP (prosta)
  2. wymuszenie nowej strony w CSS
  3. symulacja POST -a do innej strony poprzez użycie gniazdek
  4. chyba najciekawsza - wykorzystanie curl to pobrania zawartości innej strony
  5. równie ciekawa - uruchomienia w C# niewidocznej aplikacji konsolowej z pobraniem jej wyniku
  6. zastosowanie XML do pobranie elementów DOM - wymagaDomXML
  7. przewijanie DIV-a w HTML
  8. pobranie innej strony w C#
  9. zdefiniowanie ciekawej klasy w JS (podejście klasowe poprzez prototype)
  10. prosty, ale pouczający przykład jak podpiąć się do bazy w C#
  11. jak ustawić fokus na innym elemencie WinForm w C#
  12. zapis do pliku tekstowego w PHP, w PHP można prościej
  13. przykład serializacji danych w C#

czwartek, grudnia 13, 2007

Informix z Javą

  1. Świetny help z IBM - należy zrobić nastepujące rzeczy:
    1. Stworzyć plik w javie - jako klasę statyczną np: public static int explosiveReaction(int ingredient);
    2. Powstanie wtedy klasa np Courses w pliku jar: - /students/data/Courses.jar
    3. Należy ją zainstalować w bieżącej bazie -
      EXECUTE PROCEDURE     sqlj.install_jar("file://students/data/Courses.jar", "course_jar")
    4. Inne polecenia to: sql.remove_jar, sql.replace_jar, sql.alter_java_path
    5. Jest jeszcze pojęcie External Routine Reference które mapuje nazwy:
    6. EXTERNAL NAME "wskaznikDoPlikuJar.jar" LANGUAGE JAVA
    7. Więcej o tej ostatniej:
    8. EXECUTE PROCEDURE alter_java_path("course_jar",     "(professor/*, prof_jar)"); EXECUTE FUNCTION sql_explosive_reaction(10000)
    9. Powyższe oznacza, że będzie przeszukiwana dodatkowa biblioteka w katalogu professor w celu znalezienia pakietu prof_jar.       
    10. Dostajemy wtedy tzw. jar ID (course_jar), który może służyć jako odnośnik w UDR napisanych w javie.
    11. Trzeci parametr pozwala na wykonanie dodatkowych funkcji (w postaci zdań SQL) np. zarejestrowanie i przydzielenia grantów (przywilejów) dla tego UDR.
    12. Przykład wywołanie funkcji w C:
    13. CREATE FUNCTION equal( a point, b point ) RETURNING BOOLEAN;    EXTERNAL NAME "/usr/lib/point/lib/libbtype1.so(point1_equal)"    LANGUAGE C END FUNCTION;
    14. Fragment dokumentacji orginalnej:
      To create a user-defined function written in the Java language 
      1. Write a Java static method, which can use the JDBC functions to interact with the database server.
      2. Compile the Java source file and create a .jar file (the shared-object file for Java).
      3. Execute the install_jar( ) procedure with the EXECUTE PROCEDURE statement to install the jar file in the current database.
      4. If the UDR uses user-defined types, create a map between SQL data types and Java classes.
      5. Use the setUDTExtName( ) procedure that is explained in EXECUTE PROCEDURE.
      6. Register the UDR with the CREATE FUNCTION statement.

      Rather than storing the body of an external routine directly in the database, the database server stores only the pathname of the shared-object file that contains the compiled version of the routine. When it executes the external routine, the database server invokes the external object code.

      The database server stores information about an external function in system catalog tables, including sysprocbody and sysprocauth. For more information on the system catalog, see the IBM Informix Guide to SQL: Reference.

    1. Bardzo ciekawie wygląda opcja szyfrowania danych - http://publib.boulder.ibm.com/infocenter/idshelp/v10/index.jsp?topic=/com.ibm.sqls.doc/sqls1024.htm - w Informixie

środa, grudnia 12, 2007

Takie sobie linki o VFP
  1. http://blog.todmeansfox.com/category/visual-foxpro/ - blog o VFP pod kątem wykorzystania w BI i ETL + dużo o normalizacji danych oraz porównywaniu podobnych tabel
  2. http://rickschummer.com/blog/2005/04/paying-it-forward-vfp-tips.html
  3. http://www.alvechurchdata.co.uk/foxhide.htm - ukrycie okna _screen w VFP (wpis w config.fpw: screen=off)
  4. http://dabodev.com/documentation - srodowisko foxopodobne w Pythonie
  5. http://www.cetus-links.org/software.html - linki do wszystkiego co jest podobne do OO (w tym także VFP)
  6. http://users.aol.com/foxproresources/index.htm - zasoby do VFP w starych wersjach (nostalgia), szczególnie biblioteka techniczna.
  7. http://leafe.com/dls - stare ale jare
  8. http://www.tedroche.com/blog/tag/foxpro/
  9. http://www.ml-consult.co.uk/links.htm - super linki do innych
  10. http://leafe.com/dls/vfp - super strona do współczesnego VFP
  11. http://foxcentral.net/microsoft/NETforVFPDevelopers.htm - podręcznik dla VFP by przeszli na stronę .NET
  12. http://www.foxite.com - oczywiście tego nie można pominąć
  13. http://www.tek-tips.com/viewthread.cfm?qid=1430765&page=1 - super forum
  14. http://www.programmersheaven.com/2/vfp-Dot-Net-Interop - taki sobie raj dla programistów
  15. http://my.advisor.com/doc/18897?open&p=2&pid= - trudności z VFP pod Vistą
  16. http://www.microsoft.com/communities/newsgroups/list/en-us/default.aspx?dg=microsoft.public.fox.programmer.exchange - równie dobre ale trochę tendencyjne z MS
  17. http://www.geocities.com/ResearchTriangle/9834/mainfram.htm - stare ake jest tam SpyIn (DLL)

  1. http://aspnet.4guysfromrolla.com/ - trochę z innej beczki, ale też dobre
  2. http://software.ericsink.com/articles/Boundaries.html
  3. http://www.codinghorror.com/blog/ -
  4. freshmeat -
  5. http://submain.com/download.aspx?product=guidelines
  6. http://www.larkware.com/
  7. http://www.joelonsoftware.com/
  8. http://diveintomark.org/tag/personal - mark pilgrim site
  9. http://www.gotdotnet.com/community/messageboard/home.aspx - po gotdotnet zostało niewiele ale ma świetne linki
  10. http://www.kamalpatel.net/Downloads.htm#soap
  11. http://www.codeproject.com/KB/cs/jscompress.aspx
  12. http://www.codeproject.com/KB/showcase/StartingWithSilverlight.aspx - zacznij ze Silverlight

niedziela, grudnia 09, 2007

Nowinki:
  1. Kuźnia oprogramowania bezpłatnego - serwis sourceforge - ogłosił walkę ze spadkiem dochodów. Twórcy wolnego oprogramowania nadal będą mogli publikować swoje aplikacje na tym serwisie bezpłatnie, jednakże za zakup tego oprogramowania, serwis będzie pobierał prowizje (od 7 do 12%). Tego samego dnia serwis sourceforge został zhakowany.
  2. Jest nowa wersja LEGO DESIGNER-a - http://fileforum.betanews.com/download/LEGO_Digital_Designer_for_Windows/1100288444/1
Niedziela 9 grud. (tu widać zalety szerokiego spojrzenia witryna AJAXIAN.COM)
Wolta dosłownie w MS, niedawno MS ogłosił projekt Volta (pierwsze wzmianki o nim pojawiły się już latem). Teraz więcej szczegółów na betanews i ajaxian. Projekt jest podobny ideologicznie do GWT (Google) ale bardziej dojrzalszy koncepcyjnie (ma do dyspozycji środowisko dojrzałe wytwórcze w postaci VS2008 oraz do dyspozycji całą gammę języków programowania - wszystkie języki dostępne na platformie .NET mogą tworzyć oprogramowanie aplikacji webowych). Powstało nawet całe laboratorium projektu.
Wg. MS aplikacja webowa jest szczególnym przypadkiem aplikacji Client/Server, jedynie jest spozycjonowana (podzielona na różne części wykonujące się w róznych warstwach). Tu ukłon w stronę tradycyjnych programistów Visual Studio, którzy z zazdrością patrzyli na kolegów "dziergających" strony w JS pisania swym tradycyjnym sposobem a potem podzielnia warstw od warstwy prezentacyjnej (front end) aż po warstwę logiki (back end) i dostarczenie warstwy frontowej przez internet do . Teraz mają możliwośćprzeglądarki lub aplikacji klienta. Projekt jest nowy i pozycjonuje się na równi z AIR firmy Adobe, nie bardzo wiadomo jak ma współpracować z Silverlight. Architekt projektu Meijer mówi o nim, że rozszerza on platormę .NET w stronę tego do czego zawsze była przeznaczona - do konkurowania z Javą.
Bardziej technicznie - jest Volta rekompilatorem kodu MSIL na np. JavaScript, który już może wykonywać się w srodowisku przegladarki.

środa, grudnia 05, 2007

Pomysły zrodzone na kursie UML (nie jest ich za dużo ale zawsze coś)
  1. Wykorzystanie Activex (ScriptX lub CrystalReport) do tworzenia raportów w naszych aplikacjach
  2. Nowy format dokumentów elektronicznych dla Administracji (dz.Ustaw) w listopadzie (nie później)
  3. Będzie SP3 dla WindowsXP (tylko kiedy) - obiecuje zwiększenie wydajności o 10%
  4. DBCJS - IBM nowe podejście do dostępu do baz na serwerze z JS
  5. Serwis gier - gra Warsaw
  6. Książki o UML w WNT, pożyczyłem także jedną Halinie Krzemień
  7. UC -komunikacja między użytkownikiem a systemem
Ach ta JAVA
  1. Przetwarzanie XML - http://www.javaworld.com/javaworld/jw-05-2000/jw-0518-jdom.html?page=3
  2. Skryptowanie JS - http://www.mozilla.org/rhino/ScriptingJava.html

Nowości:

  1. Narzędzie do graficznego tworzenia konfiguracji do InnoSetUp - http://www.istool.org/
  2. Owoce współpracy Zend z MS - nowy, szybki filtr FastCGI do IIS 6.0 (http://www.iis.net) i natywne wsparcie do FastCGI w W2K8 i IIS 7.0. Daje to możliwość szerszego wykorzystania PHP na platformie Windows. Źródło: http://reddevnews.com/news/devnews/article.aspx?editorialsid=887
  3. Co to jest CURL IDE - http://reddevnews.com/news/article.aspx?editorialsid=9200
  4. Wsparcie dla XML w bazach - http://reddevnews.com/news/devnews/article.aspx?editorialsid=880 - DB2 (33% udziału rynku) i Oracle 11g (35%) wspierają standard ISO - SQL/XML, MS (wraz z Access - 22%) jeszcze nie.
  5. Odgrzewanie starych rzeczy: nowy MS-wski LINQ w .NET to nic innego jak urzeczywistnienie idei wtopienia w język programowania zleceń dostępu do baz danych. Ten pomysł już dawno zrealizował VFP!. Tylko trochę inaczej.
  6. Po co mi obiektowa baza danych? Sprawdź - dbo4 java/.net
  7. Otwarte oprogramowanie dla Windows - http://reddevnews.com/columns/article.aspx?editorialsid=1786 - są tam listy (O'Reilly i UBUNTU: Loop ) z takim oprogramowaniem oraz informacja o ZedGraph (http://zedgraph.org/wiki/index.php?title=Main_Page)
  8. Możliwość kopiowania dużych plików - http://www.box.net/services/browse

Portal do nauki C#

Articles :: BlackWasp Software Development

Twórca na Foxite

Cesar Chalom
http://weblogs.foxite.com/andykramek/ - wzorce projektowe
http://weblogs.foxite.com/cesarchalom/default.aspx
http://www.sweetpotatosoftware.com/SPSBlog/default,date,2007-11-07.aspx - wyjście

Rano, raniuteńko

  1. nauka C# - http://docs.google.com/?pli=1#
  2. Dywagacje na temat .NET development - http://rtipton.wordpress.com/category/net-development/
  3. forum VFP - http://www.svfpug.com.au/
  4. http://wiki.script.aculo.us/scriptaculous/revision/show/6/Ajax.Request
  5. Ciekawy blog VFP - http://www.craigbailey.net/foxtabs.htm - tabulator w IDE
  6. Hsia:
    1. http://blogs.msdn.com/calvin_hsia/archive/2007/10/08/5370183.aspx
    2. http://blogs.msdn.com/calvin_hsia/archive/2004/06/18/159550.aspx na ASP stronie
  7. Naprawdę dobry program do tworzenia pakietów instalacyjnych INNOSETUP - http://klub.chip.pl/innosetup/Innosetup/faq.htm#vc
  8. Coś niebywałego - mamy dwa różne (dokładnie certyfikaty), które produkują kolizję - http://www.win.tue.nl/hashclash/TargetCollidingCertificates/
  9. Jak sprawdzić to:
    To get a human-readable view of the contents of the certificates:              openssl x509 -in TargetCollidingCertificate1.cer -inform DER -text     openssl x509 -in TargetCollidingCertificate2.cer -inform DER -text          To verify the signature on the two certificates against the CA certificate,  first convert the certificates to PEM-format ("openssl verify" does not work with the DER format):              openssl x509 -in TargetCollidingCertificate1.cer -inform DER -out TargetCollidingCertificate1.pem     openssl x509 -in TargetCollidingCertificate2.cer -inform DER -out TargetCollidingCertificate2.pem     openssl x509 -in MD5CollisionCA.cer -inform DER -out MD5CollisionCA.pem          and then do the verification:              openssl verify -CAfile MD5CollisionCA.pem TargetCollidingCertificate1.pem     openssl verify -CAfile MD5CollisionCA.pem TargetCollidingCertificate2.pem 
  10. Narzędzia ciekawe z PCTOOLS
  11.  

wtorek, grudnia 04, 2007

Barbórka wieczorowo:

  1. Strony ajaxowe - http://mbyte.org.ua/ajax/page/2/ a w nim klasyka - opowieść tworcy koncepcji AJAX - http://www.adaptivepath.com/ideas/essays/archives/000385.php
  2. http://www.ajaxprojects.com/ajax/tutorials.php
  3. Pomysły - inne elementy interfejsu: tree (Yahoo), grid (Nitobi, dojo - http://www.sitepen.com/blog/2007/11/06/simple-dojo-grids/ lub http://www.scbr.com/docs/products/dhtmlxGrid/), windows (zamiast wbudowanych) np. http://www.huddletogether.com/projects/lightbox2/, http://prototype-window.xilinus.com/)
  4. Framework XAJAX jest już calkiem dojrzały - http://www.xajaxproject.org/
  5. Super linki do otwartych projektów Flash (połaczenie z JS) - http://osflash.org/projects
  6. Słynne MVC w wykonaniu JS - http://www.javascriptmvc.com/
  7. Hej, trzeba mysleć otwarcie, tak jak Apache Software Foundation (ASF) w swych projektach np. XAP (eXtensible Ajax Platfrom) - http://www.rockstarapps.com/pmwiki/pmwiki.php?n=XAP.XAP lub http://incubator.apache.org/xap/architecture.html. Apache jest tylko ogniwem a łańcuchu, warrstwą w architekturze trójwarstwowej. Inne warstwy jak serwer aplikacji nie mają z nią żadnych powiązań i zależności poza ustalonym interfejsem. Mogą być posadowione na innym komputerze i innej platformie narzedziowej np. PHP, ASP, J2EE czy .NET.
  8. AJAX w ciągu dwóch ostatnich lat wiele zmienił w aplikacjach webowych - http://www.cio.com/article/160650/Beyond_Ajax_Software_Development_Two_Years_from_Now. Rozmowy z ekspertami - http://www.cio.com/article/160650.
  9. Nowe IDE - Komodo - the release of Open Komodo, Aptana and Panic, the ActiveState
  10. DOJO - http://alex.dojotoolkit.org/ - http://www.cio.com/article/160450
  11. Oba - http://www.25hoursaday.com/weblog/
  12. Forum - http://www.daniweb.com/forums/forum117.html
  13. Różnice między implementacją onkeypress :<script language="javascript" type="text/javascript">
    function enterHere()
    {
    if((event.which && event.which == 13) (event.keyCode && event.keyCode == 13))
    {
    find();
    }
    }
    </script>
  14. a w FF:
  15. function enterHere(e)
  16. {
  17. e = e window.event;
  18. var code = e.keyCode e.which;
  19. if(code == 13)
  20. find();
  21. }
  22. VFP - socjologiczne portale -http://msdn2.microsoft.com/en-us/vfoxpro/bb190228.aspx, prezentacje na http://www.svfpug.com.au/
Linki w Barbórkę.
Tradycyjnie górnictwo w Polsce przezywa wielki dzień "Barbórkę", wtedy mam wolne, ale nikt mi nie broni usiaść przy komputerze.
  1. Świetny serwis ajaxian i ten ajaxlines:
    1. Znany autor Hunlock - http://www.hunlock.com/blogs/The_Ultimate_Ajax_Object super obiekt na AJAX gdy nie korzystamy z grubych frameworków na ajaxlines jest on tu, aha jeszcze pisze o konieczności przez wysłaniem danych zakodowaniou ich
    2. Biblioteka AdLib - http://adlib.ozonecreations.com/docs/files/utilities/xhr-js.html
    3. Różności ajaksowe w ajaxlines - http://miniajax.com/index.htm
    4. Ładowanie skryptów na żądanie (JS loader)- http://www.ajaxlines.com/ajax/stuff/article/on_demand_javascript_libraries.php
    5. Unikajmy jak ognia 'eval' - http://www.ajaxlines.com/ajax/stuff/article/using_json_in_ajax_without_using_eval.php
  2. Nauka PHP obiektowego - http://www.hiteshagrawal.com/php/oops-in-php5/oops-in-php5-using-interface
  3. http://www.hiteshagrawal.com/category/javascript/objects-in-javascript
  4. Czytanie XML w JS - http://www.hiteshagrawal.com/javascript/javascript-parsing-xml-in-javascript
  5. Ciekway weblog MS - http://weblogs.asp.net/scottgu/archive/2007/11/29/net-web-product-roadmap-asp-net-silverlight-iis7.aspx
  6. Mapa drogowa rozwoju .NET - http://www.microsoft-watch.com/content/developer/microsoft_updates_web_developer_roadmap.html
  7. Zapytaj w Oxfordzie - http://www.askoxford.com/?view=uk
  8. Rady i porady na temat PC: http://www.pcadvisor.co.uk/news/index.cfm?newsid=11481&pn=1
  9. Tutoriale do PHP - http://www.tutorialized.com/view/tutorial/Easily-Format-JSON-using-PHP-and-Interpret-using-Javascript/30492
  10. Kolejny tutorial na temat AJAX - http://www.frihost.com/forums/vt-39219.html

poniedziałek, grudnia 03, 2007

Co z tym MS SQL-em i otwartością MS?
MS udostępnił dwa pożyteczne aplikacje do obsługi tej bazy. Są to:
  • Serownik do MS SQL Servera 2005 dla JDBC (w wersji dla Windows i Unix) w wersji 1.2
  • Sterownik do MS SQL Server dla PHP 5 na Windows (wymaganie - klient natywny SQL Servera)
Warto to zobaczyć
Aha! Jest wsparcie jest poprzez blog:
  1. http://blogs.msdn.com/data/ oraz forum
  2. http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=87&SiteID=1
  3. http://blogs.msdn.com/jdbcteam/
Wejście do forum MS: http://forums.microsoft.com/