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/


czwartek, listopada 29, 2007

Linki dom - 29.11.2007

  1. http://www.beansoftware.com/ASP.NET-Tutorials/JavaScript-Functions.aspx: mamy takie podejścia:
    1. 4 < SCRIPT LANGUAGE =JAVASCRIPT> <!--
      5 input=window.prompt( "Type the number of attachments here" , "5" );
      6 document.write( "<H3>Number of files to be attached: " +input+ "</H3>" )
      7 //--> </ SCRIPT >
    2. 2 < p align ="center">
      3 < input type ="button" value ="Back" onclick ="history.back();">
      4 < p align ="center">
      5 < input type ="button" value ="Forward" onclick ="history.forward();">
    3. 5 < SCRIPT LANGUAGE =JAVASCRIPT> <!--
      6 //----------
      7 function redirectPage()
      8 {
      9 location = "s4.htm"
      10 }
      11 //----------
      12 setTimeout("redirectPage()", 3000);
      13 //--> </ SCRIPT >
  2. Opis kontrolki XMLDataSource - http://www.beansoftware.com/ASP.NET-Tutorials/XMLDataSource-Control.aspx -

    "Save Countries.xml and then close it. Now that xml file is ready, switch to design view of default.aspx. Open Tool box and drag and drop the TreeView control onto page from navigation section of Toolbox. Right click the TreeView control and choose Show Smart Tag. On the TreeView Tasks menu, in the Choose Data Source drop-down list, select New Data Source as shown below..."

  3. Wprowadzenie do JSF - http://jsf.javabeat.net/articles/2007/05/java-server-faces-introduction/ i innych technologii
  4. Nowe możliwości w Java 6 ze strony www.javabeat.net
    1. http://www.javabeat.net/javabeat/java6/articles/what_is_new_in_java_6_0_collections_api.php
    2. http://www.javabeat.net/javabeat/java6/articles/scripting_in_java_6_0_part1.php - przykład:
    3. import javax.script.*;
      class HelloWorld{
      public static void main(String args[]) throws Exception{
      ScriptEngineManager factory = new ScriptEngineManager();
      ScriptEngine engine = factory.getEngineByName("JavaScript");
      engine.eval(new java.io.FileReader("helloworld.js"));
      Invocable inv = (Invocable) engine;
      inv.invokeFunction("testMessage", "Hello World!!!" );
      }
      }
  5. Narzędzie do UML - http://www.visual-paradigm.com/product/vpuml/vpumldownload.jsp?edition=ee&product=vpuml
  6. Strona która wszystko tłumaczy - http://betterexplained.com/
  7. Ciekawe - wtłoczyć do pliku "jar" dwa pliki tekstowe i nastepnie je przeczytać z jego wnetrza. To samo ale z pozycji appletu: ArrayList<String> list = new ArrayList<String>();

    try {
    is = FileUtils.class.getResourceAsStream(s);
    br = new BufferedReader(new InputStreamReader(is));

    while (null != (line = br.readLine())) {
    list.add(line);
    }
    }
  8. Tamże patrz - http://www.rgagnon.com/topics/java-js.html - interakacja js-java
  9. Jak załatwić logowanie w applecie - http://www.rgagnon.com/javadetails/java-0128.html
  10. Jak tworzyć aplikacje webowe - http://www.parleys.com/display/PARLEYS/Comparing%20Java%20Web%20Frameworks - porównanie frameworków



środa, listopada 28, 2007

Linki środa 28.11
http://www.plentyofsoft.com/software-development/windows-std-serial-comm-lib-for-foxpro/
http://www.amazon.com/Head-First-Design-Patterns/dp/0596007124/ref=pd_sim_b_img_4 - ściągnij
http://www.example-code.com/foxpro/https_delicious_post.asp
http://www.ddj.com/development-tools/202802993
http://blog.todmeansfox.com/category/visual-foxpro/

piątek, listopada 02, 2007

Nowinki.

Google pozazdrościł sukcesu MS w pozyskaniu władzy nad Facebook (50 milionów użytkowników) i niespodziewanie uderzył ogłaszając, że 5 listopada udostępni open API do swego "social graph data". Zacznie od serwisu Orkut i iGoogle. Zaprasza również inne firmy. Jedną z nich jest MySpace (Google ją wykupił?) - gdzie oferuje zintegrowany system logowania. Podobnie chciał zrobić MS ze swoim Passport, jemu się nie udało, ostatnią firmą, która się wycofała z tej usługi był eBay. Idea Passport przeżyła w postaci Windows Live ID, ale i ona musi być otoczona "troskliwą" opieką jeżeli chce nabrać większej popularności.

Z doniesień wynika, że Google chce stać się dominującym graczem w obszarze platformy wspierającej społecznościowych aplikacji internetowych (primary platform for social networking-based applications). Pierwsza próba stworzenia takiej platformy to FaceBook. Otwarte API jest potrzebne z uwagi na ciągle logowanie się do różnych sieci społecznościowych i dołączanie do nich swoich "starych" grup przyjaciół. API w Facebook pracuje w środowisku FaceBook więc nie jest wcale takie otwarte. Google jako gracz z tylnego rzędu obiecuje stworzenie uniwersalnej platformy niezależnej od dostawy aplikacji społecznoścowych. Udalo mu się wciągnąć MySpace i Bebo wraz z Friendster. Czy MS wraz z FaceBook pójdą na konfrontację z Google i MySpace?

Tutaj jest blog z Google wyjaśniający potrzebę takiego otwartego API.

Przykład: jest jakaś świetna aplikacja do przetwarzania zdjęć, dzięki API można ją podłączyć do serwisów społecznościowych np Facebook i innych.

Inne linki - http://code.google.com/apis/opensocial/faq.html

Google chce byc posrednikiem między aplikacjami internetowymi a sieciowymi społecznościami. API Google wymaga tylko JavaScriptu, API Facebooka jest napisane w specjalnym języku. Wideo na ZDNET - http://blogs.zdnet.com/BTL/?p=6852

Chęć przyłączenia się do serwisu GG ogłosiły m.in. Plaxo i Oracle (na złość MS).

Serwisy informacyjne (ciekawe):

http://www.techcrunch.com

http://www.techmeme.com/

niedziela, października 28, 2007

Nowe linki:
  1. http://trac.lighttpd.net/trac/wiki/Docs -serwer www (lekki)
  2. http://www.theserverside.com/tt/articles/article.tss?l=ServerMatrix - najnowsze zestawienie serwerów aplikacyjnych Java EE
  3. Ajax wg. Kris Hadlock:
    1. http://www.webreference.com/programming/javascript/ajax_forms/index.html + download (AjaxFormPost)
    2. http://blog.studiosedition.com/
    3. http://www.informit.com/authors/bio.aspx?a=50C1182C-91AB-41A1-9249-F43409207581&rl=1
  4. http://swik.net/?page=3 -ciekawe
  5. http://www.easyeclipse.org/site/home/
  6. http://www.beldzio.com/bezpieczenstwo-mechanizmu-sesji.freez
  7. http://community.creamsoft.com/index.php?name=PNphpBB2&file=viewforum&f=30&sid=1427b653c5e9e879f29c3d075ad4ef9a
  8. http://www.informit.com/
  9. http://ajaxdic.com/Russian/ -słownik
  10. http://www.studiosedition.com/?articles=
  11. http://www.informit.com/articles/article.aspx?p=1078181
  12. http://code.google.com/webtoolkit/
  13. http://itefforts.blogspot.com/search/label/Eclipse

piątek, października 26, 2007

Pomysły:
  1. Zend próbuje powielać pomysły J2EE starając się "podrasować" i ukryć niedostatki iPHP, ale to daje tylko większą komplikację w jego opanowaniu przez "masy". Poza tym nie ma jako tako serwera aplikacyjnego w prawdziwym tego slowa znaczeniu.
  2. Zaletą PHP jest to, że można w nim wystartować od razu bez dużych nakładów na serwer, ale w miarę wzrostu złozoności i rozmiaru aplikacji zaczyna się coś w nim zakleszcza i zaciera.
  3. TAG i JSTL to próba podejścia do zmniejszenia komplikacji kodu i stosowanych technik potrzebnych do stworzenia aplikacji internetowej poprzez przerzucenie komplikacji na obszar deklaratywny (znaczniki) zamiast podejścia proceduralnego.
  4. Stosując frameworki i niezbędne do tworzenia aplikacji szablony w j. programowania doprowadzam do mistrzostwa powielania pewnych stałych elementów gry (otoczek obiektów) robiąc to w sposób małpy doskonałej aż w końcu dochodzi do napisania czegoś w stylu "return stała".
  5. Mało doceniana, ale nadal ważna technologia "pomostowa" - połączenie grubego klienta z możliwością połączenia z Internetem (MS proponuje usługi webowe w klasycznym wykonania np. MS Live, Yahoo -Widgets, Google - Gear). Do gry wchodzi Mozilla - webRunner (a w nowym wykonaniu Prism).
  6. Dostęp do wspólnego pola pamięci (do komunikowania się) w technologii serwera aplikacji J2EE pozwala na bardzo wyszukiwane przetwarzanie danych wchodzących (response - pamiętajmy, że wszystko kręci się wokół klienta) i wychodzących (request) w aplikacji Internetowej. Przykład - formularz wysyła dane do serwera (tj. żąda danych), przyjmuje je servlet, który przetwarza je (dopisuje do strumienia danych request inne obiekty np. kolekcje zleceniem req.setAttribute() i przesyła dalej np. do JSP (jak poprzez Dispatchera). Wykorzystuje się programowanie strumieniowe (stream) i rurociągi (pipes).
  7. Duży potencjał tkwi w wykorzystaniu AJAX w aplikajach PHP i JAVA ciekawe jakich technologii używają (wiem, że w JAVA jest to DWR i GWT, a w przypadku ZEND - nie wiem, PHP wiem SAJAX, nAJAX lub JPOP)

wtorek, października 23, 2007

niedziela, października 21, 2007

XML i PHP:
  1. PHP 5.0 realizuje dostęp do XML poprzez SimpleXML. Inny tutorial o tablicach (http://www.motov.biz/php/php-arrays-the-ultimate-guide.html) i funkcjach. Do XML można podejść dwojako:
    1. SAX - czytać cześciowo dokument XML i uruchamiać specjalne funkcje użytkownika po napotkaniu interesującego nas węzła (callback)
    2. DOM - czytanie (bardzo rozrzutne) całego dokumentu do pamięci z zbudowanie drzewka odzwierciedlającego hierarchię dokumentu
  2. W PHP 5.0 wzięto na tapetę implementację biblioteki w C++ zwanej libxml2. Dodatkowe rozszerzenia zrobili: Sterling Hughes, Rob Richards and Marcus Börger.
  3. Duży wkład w prace nad zunifikowanym DOM - http://dean.edwards.name/weblog/
  4. Przykład:<?php

    // set name of XML file
    $file = "pet.xml";

    // load file
    $xml = simplexml_load_file($file) or die ("Unable to load XML file!");

    // access XML data
    echo "Name: " . $xml->name . "n";
    echo "Age: " . $xml->age . "n";
    echo "Species: " . $xml->species . "n";
    echo "Parents: " . $xml->parents->mother . " and " . $xml->parents->father . "n";

    ?>
  5. Modyfikacja:$xml->name = "Sammy Snail";
    $xml->age = 4;
    $xml->species = "snail";
    $xml->parents->mother = "Sue Snail";
    $xml->parents->father = "Sid Snail";

    // write new data to file
    file_put_contents($file, $xml->asXML());
  6. Inny przykład, operacja na atrybutach:<?php

    // create XML string
    $str = <<< XML
    <?xml version="1.0"?>
    <shapes>
    <shape type="circle" radius="2" />
    <shape type="rectangle" length="5" width="2" />
    <shape type="square" length="7" />
    </shapes>
    XML;
    // load string
    $xml = simplexml_load_string($str) or die ("Unable to load XML string!");

    // for each shape
    // calculate area
    foreach ($xml->shape as $shape) {
    if ($shape['type'] == "circle") {
    $area = pi() * $shape['radius'] * $shape['radius'];
    }
    elseif ($shape['type'] == "rectangle") {
    $area = $shape['length'] * $shape['width'];
    }
    elseif ($shape['type'] == "square") {
    $area = $shape['length'] * $shape['length'];
    }
    echo $area."n";
    }
    ?>
  7. Można stosować XPath:

    <?php

    // set name of XML file
    $file = "ingredients.xml";

    // load file
    $xml = simplexml_load_file($file) or die ("Unable to load XML file!");

    // get all the <desc> elements and print
    foreach ($xml->xpath('//item[quantity > 1]/desc') as $desc) {
    echo "$descn";
    }

    ?>


piątek, października 19, 2007

Piątek 19 paździenik
  • Bardzo ciekawy serwis na temat wizualizacji danych -"Charts and Graphs: modern solutions": wśród nich znam http://www.maani.us/xml_charts/index.php
  • [Dzieci] -: http://www.designvitality.com/blog/2007/09/web-design-inspiration/
    • http://www.artcyclopedia.com/
    • http://www.wga.hu/
    • http://www.pbs.org/arts/arts_fineart.html
    • http://www.fine-art.com/
  • Koniecznie wydrukuj - http://www.webreference.com/programming/javascript/ppk1/5.html
  • Ściągnij przykłady z tej ksiązki - http://www.quirksmode.org/book/examplescripts.html
  • Lekcje uzdrowienia - http://www.courseinmiraclesebook.com/course-in-miracles-one-day-at-a-time/a-course-in-miracles-lesson-137/
  • Podobne szukaj - zen happy day
  • Jak podpisać cyfrowo w środowisku Apache - http://www.garex.net/apache/
  • Podpisywanie dokumentów - http://www.schneier.com/blog/archives/2005/09/code_signing.html - dywagacje
  • Podpis w środowisku Windows - http://www.windowsecurity.com/articles/Code-Signing.html
  • Podpisywanie w sunie - http://www.suitable.com/docs/signing.html
  • Przypatrz się CACERT (jest już za darmo - cacert.org) i PEM w Polsce
  • Świetne odpowiedniki komercyjnego oprogramownia - http://www.maani.us/xml_charts/index.php
  • Silverlight - jest rywalem Adobe Flasha - podstawą Popfly - edytora mashup
  • Edytory darmowe:
    • http://selida.camelon.nl/selida.html
    • http://www.wymeditor.org/en/
  • Dodatki do stron AJAX:
    • http://www.designvitality.com/blog/2007/09/css-rounded-corners-gradients-shadows-without-images/
    • http://www.designvitality.com/blog/2007/10/43-exceptionally-useful-ajax-applications/
    • http://dean.edwards.name/my/
    • okienka - http://stickmanlabs.com/lightwindow/#demos
    • http://www.badboy.ro/articles/2007-01-30/niceforms/ plus zasoby o JS:
      • http://www.quirksmode.org/ - tamże -> http://www.quirksmode.org/dom/compatibility.html
  • Świetne - http://www.ajaxlessons.com/2006/03/07/ajax-workshop-4-live-data-with-json-prototypejs/

czwartek, października 18, 2007

Pokłosie kursu

http://www.w3schools.com/xml/xml_data_island.asp

Ciekawe liki:

  1. www.enterpriseajax.com - ściągąłem przykłady
  2. http://ajaxian.com/archives/javascript-running-to-the-server - biblioteka do wykonywania skryptów js w środowisku Java (tam ejst link do http://ejohn.org/blog/bringing-the-browser-to-the-server/)
  3. Cała masa zasobów do AJAX w http://searchvb.techtarget.com/generic/0,295582,sid8_gci1146961,00.html?track=NL-150&ad=539108 - super długa
  4. VFP - http://www.foxclub.ru/articles/index.php
  5. Nowa wersja script.aculo.us!
  6. Sajax nadal żyje chociaż w wersi 0.12 - "
    Sajax uses the javascript escape() function, which is incorrect. It should use encodeURIComponent(). If you replace escape() with encodeURIComponent(), UTF-8 characters will be handled correctly. "
  7. Pobieranie fragmentów ze strony (screen scrapping wg. prototype), kodowanie escape/UTF-8:
    1. load("env.js");
    2. window.location = "http://alistapart.com/";
    3. window.onload = function(){
    4. load("dist/jquery.js");
    5. print("Newest A List Apart Posts:");
    6. $("h4.title").each(function(){
    7. print(" - " + this.textContent);
    8. });
    9. };
  8. Jak zwykle ajaxian - Caja Google
  9. VFP - http://www.tek-tips.com/faqs.cfm?pid=184&fid=4359 - certyfikaty+programowa obsługa formularza HTML
  10. WS w PHP - WSo2.org
  11. Google Gears - http://gearsblog.blogspot.com/2007/07/gears-roadmap-and-development-process.html
  12. 250! ciekawych gadgetów AJAX - http://mashable.com/2007/10/14/web-coding/
  13. Zapam:
    1. http://www.hunlock.com/blogs/Are_you_ready_for_this
    2. http://www.hunlock.com/blogs/Are_you_ready_for_this
  14. Bardzdo ciekawe przykłady potraktowania XML - http://www.alistapart.com/articles/usingxml/
  15. Przejrzyj - http://www.dynamicdrive.com/dynamicindex2/xmlticker.htm
  16. Świetne - http://www.xmlfiles.com/dom/default.asp
  17. Site Point:
    1. cz.1 http://www.sitepoint.com/article/server-side-xml-javascript
    2. cz.2 http://www.sitepoint.com/print/xml-javascript-mozilla
  18. Może to mnie uniezależni od niuansów - http://xmljs.sourceforge.net/website/documentation-w3cdom.html#gettingstarted
  19. Inny (chyba niezależny) sposób na czytanie XML - http://www.quirksmode.org/dom/importxml.html
  20. AJAX:
    1. http://www.maxkiesler.com/index.php/weblog/comments/make_an_ajax_website_in_less_than_10_minutes/
    2. http://openrico.org/
    3. http://www.crackajax.net/tabs.php
    4. http://www.jeffpipas.com/2005/07/ajax_and_php_form_processing_1.php
    5. http://www.maxkiesler.com/index.php/weblog/comments/downloadable_web_20_and_ajax_widgets1/
    6. http://www.maxkiesler.com/index.php/weblog/comments/downloadable_web_20_and_ajax_widgets1/
  21. Matryca protokoł - http://www.w3.org/2000/03/29-XML-protocol-matrix
  22. PHP Guide - http://www.gajdaw.pl/php/index.html -super wyjaśnienia
  23. Vitamina - http://www.thinkvitamin.com/features/ajax/responsible-asynchronous-scripting

czwartek, października 11, 2007

Linki AJAX-owe 11.10.07
  1. IBM cz. I na temat AJAX: http://www-128.ibm.com/developerworks/web/library/wa-ajaxintro1.html?ca=dgr-lnxw01MasterAJAX
  2. http://www.ibm.com/developerworks/web/library/wa-ajaxintro1.html
  3. IBM cz. III: http://www-128.ibm.com/developerworks/web/library/wa-ajaxintro3/
  4. IV: http://www.ibm.com/developerworks/web/library/wa-ajaxintro4/index.html?ca=drs-tp1106
  5. V: http://www.ibm.com/developerworks/web/library/wa-ajaxintro5/index.html?
  6. Inne strony developerskie IBM - forum - http://www.ibm.com/developerworks/web/:
    1. AJAX resource center - http://www.ibm.com/developerworks/ajax?S_TACT=105AGX08&S_CMP=HP
    2. PHP resource center - http://www.ibm.com/developerworks/opensource/top-projects/php.html?S_TACT=105AGX08&S_CMP=HP
  7. http://www.ibm.com/developerworks/web/library/wa-ajaxintro8.html
  8. Tutoriale do AJAX: http://www.ajaxmatters.com/archive/2007/02/17/ajax-tutorials.aspx
  9. Świetne: http://www.tipclique.com/tutorial/ajax/mastering-ajax-part-1-introduction-to-ajax/
  10. Porównanie różnych frameworków AJAXa - http://chandlerproject.org/bin/view/Projects/AjaxLibraries
  11. Farmeworki po stronie serwera mają za zadanie izolowanie użytkownia od niuansów JavaScriptu
  12. Nowe projekty:
    1. Visual WebGUI w .NET - http://www.visualwebgui.com/
    2. XAJAX - http://xajax.sourceforge.net/
    3. SACK - http://xajax.sourceforge.net/
    4. ZK Framework - http://xajax.sourceforge.net/
  13. Uwaga - JS jest tzw. loosely typed language - wszystko traktowane jest jako zmienna, do wszystkiego można odwoływać sie jako do zmiennej. Dlatego można napisać tak: request.onreadystatechange = updatePage; // gdzie updatePage jest nazwą funkcji
  14. IBM "Using AJAX in WebSphere Portal" - jak wprowadzić tę technologie do portalowych rozwiązań. Na Ajax składa się wyłącznie jeden obiekt w JavaScript zwany XMLHttpRequest, klasa zapewniająca kanał komunikacyjny - między serwerem a klientem- pracujący w tle. To co popularnie nazywamy A to zwykłe sztuczki HTML przy pomocy DHTML. Specyfiką portali są komponenty zwane portletami. Portlet główny zawiera działanie actionPerformed(), portlety pomonicze realizują doView(). Zbierają one informacje i tworzą kod HTML, który wysyłają do klienta. Rola A. jest dwojaka: po stronie klienta oraz po stronie serwera (np. jako servlet lub webservice) co pozwala na lepszą separację kodu od kodu modelu. Czasmi jednak nie opłaca się korzystać z AJAX.
  15. Podsumowanie tego jest w http://ajaxian.com/archives/mastering-ajax-with-ibm-developerworks.
  16. Dzieje się to tak:


Literatura:
  1. http://ajaxpatterns.org/
  2. http://bennolan.com/behaviour/
  3. http://www.jibbering.com/2002/4/httprequest.html
Co nowego w 11.10.07:
Na serwisie betanews można dziś przeczytać o nowej poprawce do Windows XP (SP3) ma poprawić bezpieczeństwo nie tylko poprzez załatanie istniejących "dziur" ale również poprzez wyposażenie XP w funkcje dostępne tylko w Vista. M.in. chodzi o specjalny moduł kryptograficzny zwany Kernel Mode Cryptographic Module wbudowany w jądro systemu (a więc dostępny dla wszystkich procesów od zaraz a nie poprzez zewnętrznej biblioteki implementującej samodzielnie algorytmy kryptograficzne) zgodny z zaleceniami FIPS 140-1 Level 1.
Realizuje on:

DES ECB encrypt/decrypt

3DES (3 key) ECB encrypt/decrypt

DES CBC encrypt/decrypt

3DES (3 key) CBC encrypt/decrypt

3DES ECB encrypt/decrypt

SHA-1 hash

Bardzo to wzmacnia bezpieczeństwo realizacji funkcji kryptograficznych systemu. Ważne jest to, że KMCM był wbudowany w server Windows 2000 i jego pierwsza implementacja w systemie klienckim była w MS Vista. Poprawka SP3 wbuduje ten moduł również w starego klienta MS Windows XP.

środa, października 10, 2007

Nowości 10.10.07
  1. Edytor obrazów - http://fotoflexer.com/
  2. Oracle - http://www.ploug.org.pl/conference.php
  3. JS - http://onlinetools.org/articles/unobtrusivejavascript/
  4. JS - http://bennolan.com/behaviour/
  5. JS - http://www.bobbyvandersluis.com/articles/goodpractices.php
  6. JS - http://www.codecoffee.com/articles/9tips.html
  7. JS - http://www.thinkvitamin.com/features/webapps/serving-javascript-fast
  8. JS - http://simon.incutio.com/slides/2006/etech/javascript/js-reintroduction-notes.html
  9. JS - http://www.cs.rit.edu/~atk/JavaScript/manuals/jsobj/
  10. JS - www.hotscripts.com
  11. Współpraca ZEND i innych firm na następujących obszarach (http://www.computerworld.com.au/index.php/id;1176879609;pp;1):
    1. Wstawka do MS IIS zwana "GoLive" przez MS - jest to implementacja wtyczki FastCGI do realizacji PHP w celu przyspieszenia wykonania skryptów
    2. Wsparcie bezpośrednie (podobnie jak MySQL, DB2 i Oracle) dla bazy MS SQL Server.
    3. Wsparcie dla Information Card (części frameworku autentykacji MS CardSpace wsperanej przez MS) i realizacja Single-sign On.
    4. Wsparcie w ZEND Framework Plaftorm opcji MS Server Core dla WS 2008 - minimalnej konfiguracji systemu oper. dla zadań hostingowych
    5. Przejscie z ZEND Studio opartego o Jave i SWT na platformę Eclipse (komercyjnie)
    6. W obszarze IBM, firma ta ogłosiła technologię wsparcia dla mashup tzw. "Info 2" w oparcie o Zend Framework
    7. Oracle dostarczył zoptymalizowanych sterowników do bazy 11g w postaci OCI do repozytorium PECL
  12. http://www.ibm.com/developerworks/web/library/x-ajaxxml6/index.html?S_TACT=105AGX08&S_CMP=EDU

wtorek, października 09, 2007

Linki (dom 9.10.07):
  1. JavaScript - http://blog.jcoglan.com/
  2. Java - http://spring.javabeat.net/articles/2007/06/spring-mvc-web-framework-introduction/
  3. http://spring.javabeat.net/articles/2007/06/spring-mvc-web-framework-introduction/2
  4. JS - http://blog.stevenlevithan.com/archives/parseuri
  5. JS - http://blog.stevenlevithan.com/archives/faster-than-innerhtml
  6. JS - http://blog.stevenlevithan.com/archives/commafy-numbers
  7. JS - http://www.quirksmode.org/blogs.shtml
  8. JS - http://24ways.org/2006/showing-good-form
  9. JS - http://www.mredkj.com/tutorials/htmljs.html#tables
  10. JS - https://ajax.dev.java.net/download.html
  11. JS - http://www.smashingmagazine.com/2007/01/19/53-css-techniques-you-couldnt-live-without/
  12. JS - http://www.dustindiaz.com/roll-out-your-own-interface/
  13. JS - http://miniajax.com/
  14. Java - http://gcc.gnu.org/java/
  15. JS - http://tutorialblog.org/25-ajax-code-snippets-and-tutorials/
  16. JS - http://tutorialblog.org/100-ajax-tutorials-and-resources/
  17. JS - http://www.smashingmagazine.com/2007/06/20/ajax-javascript-solutions-for-professional-coding/
  18. JS - http://www.ruzee.com/blog/ruzeelayoutmanager/
  19. JS - http://www.ruzee.com/blog/ruzeeevents/
  20. Java - http://www.innovation.ch/java/HTTPClient/HTTPClientExample.html
  21. http://www.innovation.ch/java/HTTPClient/HTTPClientExample.java
  22. http://www.innovation.ch/java/HTTPClient/security.html
  23. Java - http://www.innovation.ch/java/HTTPClient/index.html
  24. Java - http://www.stardeveloper.com/articles/display.html?article=2001071701&page=1
  25. Java - http://www.developer.com/java/
  26. Java - ZK Frame - http://www.developer.com/design/article.php/3610476
  27. Java - http://www.developer.com/java/article.php/10922_1382101_4
  28. Szukaj Alec Baldwin tamże
  29. JS - http://css-discuss.incutio.com/?page=FrontPage
  30. Java - http://www.ibm.com/developerworks/opensource/library/os-jws/
  31. Java WebStart - http://www.ibm.com/developerworks/java/library/j-webstart/?S_TACT=105AGX44&S_CMP=ART
Myśleć jak geniusz (www.studygs.net/genius.htm):
  1. Spojrzyj na problem na wiele sposobów i znajdź taką perspektywę z której nikt jeszcze na ten problem nie spojrzał (da Vinci uważał, że aby poznać istotę problemu należy spojrzeć na niego pod różnym kątem)
  2. Staraj się wizualizować problem (np. diagramy, mind mapping) jak Einstein (wizualizacje rozwiązania a nie stosowanie liczb i słów)
  3. Bądź produktywny, wymyślaj coraz nowe rozwiązania, nie bój się nieudanych pomysłów (Edison miał nawet minimalny próg pomysłów)
  4. Twórz nowe kombinacje. Łącz idee i pomysły w różne układy (np. Mendel połączył matematykę i biologię w genetykę)
  5. Twórz relacje, łącz ze sobą nawet najbardziej rozłączne obiekty. Da Vinci połączył dźwięk dzwonu z falami kamienia wpadającego do wody.
  6. Myśl w kategoriach przeciwieństw. Należy czasami wstrzymać logikę i pozwolić umysłowi łączyć przeciwieństwa. Bohr połączył cząsteczki i fale światła w komplementarną teorię
  7. Myśl w kategorii metafor. Artstoteles uważał za specjalny dar łączenie dwóch idei.
  8. Bądź gotowy na nadarzającą się szansę. Kiedy nam się nie uda, róbmy coś innego. Zapytaj się "co ja zrobiłem źle" zamiast "dlaczego mi się nie udało"?

Ciekawe linki:

  1. Wstęp do programownia obiektowego w PHP - http://us.php.net/manual/pl/language.oop5.basic.php
  2. Serwer aplikacji Java i nie tylko (także implementujący 100 % PHP "Quercus" i WS) w wersji OpenSource lub Professional - http://www.caucho.com/
  3. Framework Cake PHP bazuje na Rails.
  4. Czytnik newsów - Rojo na www.rojo.com
  5. Coś dla dzieci - Week in Photos w mojej poczcie (zaznaczone), czemu taki szturm na Księżyc? Ma on zasoby helium-3, materiału do przyszłych elektrowni atomowych i nie jest on radioaktywny!
  6. honky dory, joust
  7. Artykuł w Rzczpospolitej - Inteligencja społeczna nastepna faza po emocjonalnej (najbardziej zaawansowany jest w tym Dalaj Lama)
  8. Zasoby Pythona z dzone: http://mashable.com/2007/10/02/python-toolbox/. Dwie ciekawe biblioteki:
    1. PyX - do grafiki w PDF: http://pyx.sourceforge.net/examples/drawing/index.html
    2. TurboGear - framework: http://www.turbogears.org/
  9. Na temat .NET w code project:
    1. DataGrid uniwerslana - http://www.codeproject.com/useritems/GenericDataGridView.asp
    2. Interop COM i .NET z nutką historii - http://www.codeproject.com/dotnet/cominterop.asp
  10. Serwisy zakładek internetowych (zbadałem tylko 5, badaj inne):
    1. furl
    2. netvouz - http://www.netvouz.com/
    3. deli.cio.us -
    4. mag.nolia
    5. blogmarks np: http://blogmarks.net/marks/tag/javascript (poszukałem na mapie refrencyjnej z prawej strony)
    6. simpy
  11. Zasoby JavaScript:
    1. http://www.smashingmagazine.com/2007/06/20/ajax-javascript-solutions-for-professional-coding/
    2. http://www.digital-web.com/articles/seven_javascript_techniques/
    3. http://javascriptkit.com/javatutors/object.shtml
    4. http://www.delphifaq.com/faq/f1031.shtml
    5. dzone
    6. Top 10 JS function

Co nowego we wtorek?
  1. Silverlight - http://searchvb.techtarget.com/generic/0,295582,sid8_gci1256287,00.html
  2. InterOp Toolkit - http://searchvb.techtarget.com/general/0,295582,sid8_gci1266104,00.html?Offer=VBwn828intmg
  3. AJAX-y:
    1. IBM zasoby - http://www.ibm.com/developerworks/views/web/libraryview.jsp?type_by=Articles
    2. IBM ajax i lightbox - http://www.ibm.com/developerworks/web/library/x-ajaxxml6/index.html?S_TACT=105AGX08&S_CMP=EDU
    3. Generatory - http://www.ifxplus.com/post/More-than-100-Web-20-Online-Generators.aspx, m.in. bardzo fajny generator PHP/SWF do grafiki biznesowej (http://www.maani.us/charts/index.php?menu=Introduction), są też generatory formularzy.
    4. Bardzo ciekawe aplikacje wykorzystujące AJAX - http://www.designvitality.com/blog/2007/10/43-exceptionally-useful-ajax-applications/
    5. Ciekawe podejście do walidacji: http://marcgrabanski.com/code/clean-form-validation/
    6. Inny - http://www.phatfusion.net/
    7. http://www.ajaxprojects.com/ajax/projects.php
    8. http://www.appletcollection.com/java/xmlmenu.html
    9. Gaia ajax widgets - http://ajaxwidgets.com//Blogs/
    10. http://www.jsvalidate.com/
    11. http://www.theitarticles.com/26-best-ways-to-implement-ajax-css-and-javascript-based-tabs/235/
    12. Sajax w akcji - http://www.cyberdummy.co.uk/2005/07/18/gmail-ajax-style-username-signup/
    13. http://miniajax.com/
    14. Walidacja pól - http://tetlaw.id.au/view/javascript/really-easy-field-validation
    15. W JSP - http://ajaxtags.sourceforge.net/
    16. Przykład w PHP - http://www.dhtmlgoodies.com/index.html?whichScript=ajax_chained_select
    17. Tabulacja - http://www.crackajax.net/tabs.php
    18. http://www.crackajax.net/meta.php

poniedziałek, października 08, 2007

Nowości:

  1. SAP zamierza kupić Business Object (Francja) - http://www.computerworld.com.au/index.php?id=834988788&eid=-6787
  2. Bezpłatny generator PDF dla Java i .NET - http://www.lowagie.com/iText/
  3. IBM ma Lotus Symphony, MS udostępnia dokumenty on;one poprzez SharePoint - http://www.it-director.com/blogs/MWD/2007/10/Collaboration_market_update_-_IBM_and_Microsoft_in_the_news_again.html
  4. Ściągnąłem konwerter MediaCell
  5. Ciekawe możliwości instalowania dystrybucji Liniksowych - http://lubi.sourceforge.net/unetbootin.html i http://wubi-installer.org/faq.php#requirements
  6. Kurs PowerShell w odniesieniu do MS SQL Serwera - http://www.databasejournal.com/features/mssql/article.php/3686216 - tj. cz. III
  7. Powershell blog - http://blogs.msdn.com/powershell/
  8. MS przygotowuje nowy produkt Visual Studio 2008 Shell, będzie on bezpłatny - http://msdn2.microsoft.com/en-us/vstudio/bb510103.aspx, blog jest tu http://blogs.msdn.com/vsxteam/
  9. Bardzo dobre źródło informacji - http://searchvb.techtarget.com/
  10. Organizacja zajmująca się otwartą platformą AJAX (openAjax.org) opublikowała tzw. hub do bezpiecznego tworzenia aplikacji mashup tzw. OpenAjax Hub 1.1. Opubliokowała również mnóstwo innych dokumentów np. na temat bezpieczeństwa (http://www.openajax.org/). Sama strona zawiera wiele ciekawych informacji o samej technologii.
  11. Firma Altova specjalizująca się dotychczas rozwiązaniami skupiającymi się wokół XML, zaczęła wchodzić szerzej w obszar narzędzi dostępu do baz danych. W swych nowych produktach na rok 2008 zakłada udostępnienie połączenie do baz relacyjnych (DB2, Oracle i MS SQL) poprzez jednolity interfejs. Widać zauważyło szansę rozszerzenia funkcjonalności, gdyż nowe bazy coraz częściej przechowują dane w kolumnach o type XML lub przechowują wręcz całe dokumenty XML. Cóż aby żyć trzeba być elestycznym (http://www.sdtimes.com/article/LatestNews-20071001-06.html)
  12. Uche Ogbuji - obudził się i na portalu IBM daje wykład o możliwościach przetwarzania XML w przegladarce FireFox. Dodatkowo patrz do tyłu jak wyglądał rozwój wsparcia XML w tej przeglądarce (http://www.ibm.com/developerworks/xml/library/x-think40/?S_TACT=105AGX54&ca=dnw-838). Ma też swój blog (http://copia.ogbuji.net/blog)
  13. Co nowego w otwartym (community) Websphere - http://www.ibm.com/developerworks/websphere/library/techarticles/0709_jain/0709_jain.html?S_TACT=105AGX54&ca=dnw-838
  14. Zasoby TechRepublic na temat WS: Web services creation and usage represents a step in the direction of open standards. The myriad details about Web services are beyond the scope of this article. For more about Web services, check out these TechRepublic resources:
  15. Inne przykłady:
    1. http://articles.techrepublic.com.com/5100-3513_11-5793272.html
    2. http://articles.techrepublic.com.com/5100-3513_11-5778042.html
    3. http://articles.techrepublic.com.com/5100-3513_11-5768122.html
    4. Patrz uważnie TechRepublic, masz tam własne konto, może zakupić subskrypcję? Kosztuje 100 $
    5. TechRepublic - fotografie - http://content.techrepublic.com.com/2350-1_11-0.html
    6. Patton - jego artykuły
    7. Uwaga - artykuł jak tworzyć i deployować aplikacje .NET - http://blogs.techrepublic.com.com/programming-and-development/?p=516

czwartek, października 04, 2007

Historia się powtarza
Widać wyraźnie, że jedna zasada: "lepiej budować na czymś co już istnieje i jedynie rozszerzać" ciągle jest słuszna. Kiedyś dzięki niej powstał rynek komponentów do przeglądarki MS IE bazujących na ActiveX , potem nastąpił etap wtyczek do FF. Teraz historia się powtarza w przypadku Web2 a dokładnie mashup - czyli budowa aplikacji z tzw. Webparts (Mashups: The next major new software development model?)
Świetny artykuł o tym jak budować z klocków Web2 nowe aplikacje - http://blogs.zdnet.com/Hinchcliffe/?p=63
Przeszkodą jest mnogość formatów wtyczek Web2 np. swój fromat mają Google (http://www.google.com/apis/gadgets/) i MS (http://microsoftgadgets.com/) a także NetVibes (http://dev.netvibes.com/doc/uwa_specification). Organizacje zajmujące się standardami też dostrzegają potrzebę ujednolicenia formatu wtyczek: W3C (http://www.w3.org/TR/widgets-reqs/ - dobrze, że jest ale to tylko szkic tego co będzie) podobnie jak OpenAJAX (ci tylko podkreślili potrzebę)
Inny problem to zapewnienie bezpieczeństwa (np. wykorzystanie OpenID)
Uwaga: (http://www.readwriteweb.com/) -> odpowiedzią MS na oddolny ruch w stronę Web 2 jest Silverlight - formalna platforma Rich Internet Application.
Ciekawe portale to:
  1. http://techmeme.com/#a071003p76
  2. http://blogs.zdnet.com/microsoft/?p=780 - Mary Jo Foley
  3. Zoho
  4. http://services.alphaworks.ibm.com/qedwiki/ - IBM mashup

Ciekawe:
http://www.arcanology.com/2002/09/06/a-teaching-on-kurukulla-by-john-reynolds/
https://channel9.msdn.com/ShowPost.aspx?PostID=276286 - konwersacje
http://blogs.msdn.com/ie/ - blog o IE! (jest tam Ajax Viewer)
http://www.girlsgotech.org - dla Oleńki
http://msdn2.microsoft.com/en-us/library/bb250471.aspx - bezpieczeństwo ActiveX
http://www.pdftutorials.com/?gclid=CPfy3fHT9I4CFR8fXgodMVarNw - wszech tutorial
http://www.webreference.com/js/column79/index.html - początek kursu o JS
materiały z Dino Esposito
http://code.google.com/support/bin/answer.py?answer=77616&topic=11366 - zrozumienie OO
http://code.google.com/apis/gdata/index.html - wejscie do Google API
http://www.netbeans.org/kb/articles/hibernate-javaee.html - jak połączyć Hibernate z JPA
http://www.eclipseplugincentral.com/Web_Links-index-req-viewlink-cid-1071.html - wtyczki do Eclipse
http://www.theserverside.com/tt/blogs/showblog.tss?id=EJB3_NewJavaBeans&asrc=EM_NLN_2308087&uid=267959
http://java.sun.com/j2se/1.4.2/docs/guide/jws/developersguide/syntax.html - format JWS
http://blogs.msdn.com/dmandreev/archive/2007/09/18/learning-resources.aspx - zasoby do nauki .NET
http://www.trymango.com/login.php - nauka j. angielskiego
http://blogs.techrepublic.com.com/howdoi/?p=143&tag=nl.e606 - How do I?
http://www.weberdev.com/ViewArticle/Output-Buffering-with-PHP - zasoby PHP
http://reddevnews.com/columns/article.aspx?editorialsid=2267 - akropolis MS

Ciekawe WEB2 aplikacje (http://www.computerworld.com.au/index.php/id;11372495;pp;3):

  1. Ta-da list (+ RememberTheMilk)
  2. PBWiki
  3. Zoho creator
  4. Google Docs
  5. Bloglines

Czy ja mam tę aktualizację u siebie w Viscie - http://www.computerworld.com.au/index.php?id=661770304&eid=-255

Google API:

  1. http://code.google.com/apis/accounts/RegistrationForWebApps.html

Kurs AJAX:

  1. TechRepublic - szukaj AJAX/JAVA
  2. Dino Esposito - kurs
  3. Bezpieczeństwo AJAX-wych aplikacji - http://www.cgisecurity.com/ajax/



środa, października 03, 2007

Linki ciekawe:
  1. Sun ma dwie rozwiązania instalowania aplikacji wykonanych w technologii Java. Starsze to java plug-in, nowe to java webstart.
  2. Strona polska - http://www.java.pl/
  3. OpenAjax mówi o konwergencji rozwiązań AJAX w mobilnych urządzeniach i stacjonarnych komputerach. Jako silnik przeglądarkowy proponują WebKit.
  4. Super ciekawy link do materiałów na temat technologii AJAX - http://www.javapassion.com/ajaxcodecamp/
  5. Ciekawy blog - http://today.java.net/pub/q/articles
  6. Tam między innym jest - http://today.java.net/pub/a/today/2007/09/20/scripting-balance-design-performance.html
  7. Jak powstała ARPA - http://www.computerworld.com.au/index.php?id=265235099&eid=-6787 i http://www.news.com/How-NASA-helped-invent-Silicon-Valley/2009-11397-6211034.html?part=dht
  8. Co z tym TIBCO - http://www.tibco.com/software/rich_internet_application/default.jsp
  9. Adobe walczy o rynek z MS - http://www.news.com/8301-10784_3-9788712-7.html?part=dht
  10. Webstart - poczatek - http://java.sun.com/j2se/1.5.0/docs/guide/javaws/developersguide/overview.html#jws
  11. Punkt widzenia IBM - http://www.ibm.com/developerworks/opensource/library/os-jws/
  12. Inny IBM - http://www.ibm.com/developerworks/java/library/j-webstart/?S_TACT=105AGX44&S_CMP=ART
  13. Dodatkowe informacje z SUN-a - http://java.sun.com/javase/6/webnotes/family-clsid.html
  14. Komunikacja:
    1. http://java.sun.com/j2se/1.5.0/docs/guide/plugin/developer_guide/java_js.html
    2. deployment - http://java.sun.com/javase/6/webnotes/deploy/deployment-policy.html
    3. jak skryptować - http://today.java.net/pub/a/today/2007/09/20/scripting-balance-design-performance.html

wtorek, października 02, 2007

Materiały do kursu AJAX:

Ajax zajmuje się dwoma aspektami: Request & Retrieve - (wsparcie frameworków np. prototype, DWR, SAJAX) wymiana danych między serwerem a klientem (XmlHttpRequest), czyli interakcją zwaną XHR oraz Display (frameworki graficzne np. scriptacolous, moofx, dojo, rico) - czyli wyświetlaniem danych, stary problem, ale stał się coraz ważniejszy z uwagi na lepszą dostępność do danych z uwagi na p.1.
Trzeba zwrócić uwagę na to, że jedynie browser może zapoczątkować wymianę danych, wszystko zaczyna się od request klienta i kończy response serwera. Można tę sytuację odwrócić dzięki artykułowi na temat reverse AJAX: http://www.obviously.com/tech_tips/slow_load_technique
Wikipedia na temat AJAX - http://en.wikipedia.org/wiki/AJAX

  1. Poczatek dał ten artykuł - http://www.adaptivepath.com/ideas/essays/archives/000385.php
  2. (1) Trochę o closure: http://weblog.raganwald.com/2007/08/block-structured-javascript.html
  3. "JavaScript: The definitive Guide" David Flangan kupić w Helionie (lub przynajmniej przejrzeć)
  4. Opis Ext0Yahoo - http://ajaxian.com/archives/ext-20-scrolling-tabs-anchor-layout-the-web-desktop-and-more
  5. (1) What is Protoscript? - http://docs.protoscript.com/YUI:Click

    Protoscript is a simplified scripting language for creating Ajax style prototypes for the Web. With Protoscript it's easy to bring interface elements to life. Simply connect them to behaviors and events to create complex interactions.

  6. (1) Bardzo ciekawe, tworzenie grafiki- http://www.ajaxlines.com/ajax/stuff/article/emprise_javascript_charts.php
  7. (1) Strona główna - linki do JS: http://www.ajaxlines.com/ajax/stuff/javascript.php
  8. (1) Parsowanie XML w JS: http://xmljs.sourceforge.net/
  9. (1) Dla twórcow Java: Frameworki dla JAVA - http://www.ajaxlines.com/ajax/stuff/article/ajax_tools_for_java_developers.php
  10. http://www.cmarshall.net/MySoftware/ajax/index.html - żądania Ajax w kolejce
  11. http://advajax.anakin.us/index-en.htm
  12. (1) Uwaga: ma też kompletny RAD dla różnych j. programowania: http://www.ajaxlines.com/ajax/stuff/article/rialto.php
  13. Uniwersalny parser - http://www.ajaxtutorial.net/index.php/category/ajax-with-php/ - uwaga! używają encodeURI do "opakowania" argumentów do wysłania na serwer
  14. (1) http://www.weberdev.com/ - raczej więcej jest o PHP. super PHP/AJAX
  15. Bardzo ważne i ciekawe porównanie iFrame - http://codinginparadise.org/weblog/2005/08/ajax-tutorial-saving-session-across.html - zamiast AJAX
  16. PHP zwraca XML do JS poprzez AJAX - http://www.ajaxtutorial.net/index.php/2006/02/28/ajax-with-php-using-responsexml/
  17. (1) Kompletny przykład pobrania XML (od PHP) przez AJAX - http://www.ajaxtutorial.net/index.php/2006/02/28/ajax-with-php-using-responsexml/
  18. Nowości:
    1. http://taconite.sourceforge.net/
    2. http://www.xul.fr/en-xml-ajax.html
    3. http://www.dhtmlgoodies.com/index.html?whichScript=folder_tree_static
    4. http://www.chipmunkninja.com/article/asyncsessions
    5. http://www.mathertel.de/AJAXEngine/#view=Samples
    6. http://www.slideshare.net/jboutelle/replacing-xml-with-json/1
    7. http://miniajax.com/index.htm
    8. http://www.indicthreads.com/articles/447/seven_ajax_frameworks_toolkits.html
    9. http://weblogs.asp.net/mschwarz/archive/2006/10/06/yahoo_2100_-javascript-library-and-ajaxpro.aspx
    10. http://www.sitepoint.com/article/javascript-library
    11. http://tigermouse.epsi.pl/
    12. http://techtracer.com/2007/03/27/ajax-frameworks-server-side-versus-client-side/
    13. http://tripdown.de/flxajax/
    14. http://sourceforge.net/projects/cajax
    15. http://aleembawany.com/2005/09/01/ajax-instant-tutorial/
    16. http://prokata.com/ajax
    17. http://www.devarticles.com/c/a/XML/Roaming-through-XMLDOM-An-AJAX-Prerequisite/
  19. Na stronie - http://p4a.crealabsfoundation.org/tinyfck - PHP for Ajax można przeczytać: edytory na stronie www. Są generalnie dwa:
    1. FCKEditor - http://www.fckeditor.net/
    2. TinyMCE - http://tinymce.moxiecode.com/
  20. Ten drugi jest gorszy, ponieważ nie ma managera plików ani możliwości uploadowania.
  21. To co ważne w każdym projekcie i przedsięwzięciu to podwaliny tj. design patterns - http://looksgoodworkswell.blogspot.com/2005/05/mind-mapping-design-patterns.html
  22. Kontrola pól - do przejrzenia - http://tetlaw.id.au/view/blog/really-easy-field-validation-with-prototype
  23. Sprawdzanie danych - http://tetlaw.id.au/view/javascript/really-easy-field-validation
  24. Tworzenie formularzy - http://www.formassembly.com/wForms/
  25. Do sprawdzenia linkografia: http://tetlaw.id.au/view/linkography/
  26. Inne wejscie:
    1. http://www.webmonkey.com/webmonkey/06/15/index3a.html?tw=authoring
    2. http://www.webmonkey.com/webmonkey/06/15/index3a_page2.html?tw=authoring a stamtąd do
    3. http://www.webmonkey.com/webmonkey/98/04/index3a_page10.html
    4. http://adamv.com/dev/javascript/http_request
    5. http://www.webmonkey.com/webmonkey/05/16/index4a.html
    6. http://www.webmonkey.com/webmonkey/programming/javascript/tutorials/tutorial1.html = kurs
  27. Webrefrence:
    1. http://www.webreference.com/programming/javascript/jf/column12/index.html
    2. http://www.xml.com/pub/a/2005/02/09/xml-http-request.html
    3. http://www.devarticles.com/c/a/XML/Roaming-through-XMLDOM-An-AJAX-Prerequisite/
    4. http://www.webpasties.com/xmlHttpRequest/
    5. http://snyke.net/blog/2006/02/05/ajax-design-patterns/
  28. http://ajaxorized.com/?p=16 - json w prototype
  29. http://mashable.com/2007/10/05/javascript-toolbox/
  30. http://ajax.sys-con.com/read/430930_2.htm - niebezpieczenstwo AJAX
  31. http://thepeninsulasedge.com/frank_nimphius/2007/10/03/mind-the-gap-application-security-in-ajax/
  32. http://www.wintellect.com/cs/blogs/jprosise/archive/2007/09/14/silverlight-updates-and-remix07.aspx
  33. http://technomarketer.typepad.com/technomarketer/2007/10/whiteboardsessi.html - video
  34. http://ajaxian.com/archives/optimized-speedy-ajax-code

poniedziałek, października 01, 2007

Linki i ciekawe informacje:
  1. Google po ogłoszeniu dodanie do Google Apps możliwości tworzenia prezentacji (na razie w niewielkim zakresie funkcjonalnym) ogłosiło chęć kupienia firmy Zimbra za 350 mln $, która zajmuje się pracą grupową i jej wsparciem
  2. Wiele firm interesuje się wirtualizacją procesów m.in. QuackRam
  3. Wieki człowiek z IBM - Grady Booch - http://news.zdnet.com/2100-3513_22-6210219.html. Pracował przedtem w Rational (mija 5 lat od przejęcia tej firm przez IBM) i jest współtworcą UML. Obecnie pracuje nad wirtualnym środowiskiem programowania związanym z IBM-owskim programem Codestation w Second Life. Twierdzi, że nie jest całkiem prawdą, że wszystko (istota oprogramowania) tkwi w kodzie programu. Duagram UML lepiej przedstawia idea. Chwali opartą o Eclipse platformę Jazz (do pracy zespołowej tzw. team-collaboration) i twierdzi, że to coś więcej niż odgrzany Subversion. Zauważa, że każdy system ma swoją architekturę, ona pozwla przetrwać systemowi. Ważne jest dostarczyć gotowych i sprawdzonych wzorców projektowych (patterns) i doświadczeń.
  4. IBM udostepnił za darmo pakiet biurowy Lotus Symphony oparty o Open Office oraz zgłosił chęć wzięcia wększego udziału w pracach nad tym pakietem.
  5. Ma on też swój blog - http://www-03.ibm.com/developerworks/blogs/page/gradybooch.
  6. Inny wielki człowiek - Fred Brooks - http://www.softwarequotes.com/ShowQuotes.asp?ID=556&Name=Brooks,_Fred&Type=Q
  7. Twórca programu Alice odchodzi, oto jego ostatni wykład: http://cmu.edu/uls/journeys/ jest w You Tube ()