środa, lutego 13, 2008

Zasoby platformy .NET (na podstawie TechRepublic - Tony Patton):

  1. Stosowanie klas częściowych w .NET 2.0
  2. CodeSmith do generowania gotowego kodu
  3. Dziwna strona oferująca certyfikaty - http://www.cacert.org/
  4. Dostęp do danych w XML poprzez LINQ i tutorial http://blogs.techrepublic.com.com/programming-and-development/?p=585
  5. Dostęp do usług webowych z zabezpieczeniem
  6. Utworzenie usługi webowej
  7. Praca z BLOB w C# i ASP.NET
  8. Pobranie usługi sieciowej
  9. Przesłanie danych między stronami
  10. Kody aktywacyjne VS 2008 - Completing Registration of your Product
    Your registration key is: XPKSX4MJBXFLJB
  11. JS - http://articles.techrepublic.com.com/5100-3513_11-6149603.html?tag=rbxccnbtr1
  12. Bezpieczne dane w pamięci (secure string)
  13. Video o bezpieczeństwie

Derby (ale w Java)

Baza Derby jest darmową, prostą bazą danych opartą o pliki tekstowe. Jest na witrynie TechRepublic artykuł na ten temat. Pliki z intslacją są tu. Ciekawe dlaczego Google nie wziął tej bazy a SQLite do swego projektu Google Gears?

Wieści:

  1. Sun zamierza kupić VirtualBox (Innotek) - http://www.linuxworld.com.au/index.php?id=1158064042&eid=-50
  2. Naukowcy z IBM twierdzą, że 100% ataków komputerów poprzez sieć jest zakamuflowana (http://www.linuxworld.com.au/index.php/id;1329782986;fp;4194304;fpid;1). Od jakiegoś czasu obrona przed atakami w szerokim tego słowa znaczeniu (wirus, rootkit, spyware) przeniosła się z poczty do przeglądarki (to Web browser as an [exploit] entry point). Stosują do tego "zaciemnianie" exploitów, które wykorzystują wbudowane w przeglądarki języki skryptowe (JavaScript, Flash) lub wtyczki (rozszerzenia) do obsługi innych poza HTML formatów, które z kolei korzystają z innych j. skryptowych (np. PDF/AdobeScript) wbudowanych w ten format.
  3. Co lepsze ODF czy MS OOXML? Przyszłość pokaże, ale nie wolno lekceważyć MS, która mając ponad 500 mln użytkowników, chce upowszechnić format XML zgłaszając go do komitetu standaryzacyjnego. Głosowanie w tym miesiącu. Grupa Burton zamieściła nawet dość pochlebną opinię o formacie firmy MS.
  4. Z innej beczki - narzędzia do bezpiecznego surfowania - http://reviews.cnet.com/4321-3667_7-6561525.html (LinkScanner Lite), a liczba przestępstw rośnie (http://reviews.cnet.com/4520-3513_7-6771187-1.html?tag=txt), wstrzyknięcie kodu poprzez iFrame (http://wormradar.com/vidchoices.html), wiadomości z ostatniej chwili - AVG kupiło firmę Exploit Prevention Lab (http://www.explabs.com/) aby udoskonalić swój produkt o funkcje antypishingu (wypuściło nawet wersję bata 8).
  5. Google wypuścił niedawno Google Apps Team Edition - gdzie umożliwił lepsze współdzielenie dokumentów (http://www.betanews.com/article/Google_Apps_gets_improved_document_sharing/1202403825)
  6. Pranks - http://blogs.techrepublic.com.com/geekend/?p=1128&tag=nl.e605

wtorek, lutego 12, 2008

Iron Microsoft (wilk w owczej skórze)

Mamy już IronPython-a, teraz czas na IronRuby (a może wkrótce będzie IronPHP?). Nie wiadomo. Microsoft wziął na celownik oprogramowanie open-source, dzięki zaaprobowanej przez OSI licencji Ms-PL może asymilować produkty open-source z wymogiem udostępnienia ich tej społeczności.

Właśnie lider projektu Ruby.NET oświadczył o zakończeniu prac i przekazaniu wyników do grupy MS IronRuby. Nie jest to do końca dobra wiadomość, ponieważ istnieje zagrożenie "zatrucia" projektu przez "wyższe cele" MS w imię których będą podejmowane takie a nie inne rozwiązanie projektowe. O tym ostrzega eWeek.

poniedziałek, lutego 11, 2008

Zasoby Java:

  1. Świetny serwer - container: http://www.mortbay.org/
  2. Klient HTTP po nowemu: http://hc.apache.org/httpclient-3.x/
  3. Porównanie darmowych (entry-level) serwerów aplikacji w Java: http://www.javaworld.com/javaworld/jw-12-2007/jw-12-appservers.html
  4. Zastosowanie SVN w Eclipse: http://www.informit.com/articles/article.aspx?p=517206&seqNum=2

Szewski poniedziałek (nie dla wszystkich)

  1. Is Tomcat an application Server? - bardzo ciekawe porównanie implementacji Java EE w Apache Tomcat. Każdy serwer zgodny z Java EE musi wspierać:
    1. Enterprise JavaBeans (EJB) server and container;
    2. JNDI capabilities;
    3. Java Message Service (JMS) framework;
    4. Java Transaction API (JTA) framework;
    5. J2EE Connector Architecture.
    6. uwaga: każdy komponent opisany jest przez swój - deployment descriptor
  2. Dodatkowo musi wspierać hierarchiczny loader klas (hierarchical classloader) - architekturę wspierającą następującą funkcjonalność:
    1. EJB loading/reloading,
    2. WAR loading/reloading,
    3. manifest-specified utilities (JAR itd)
  3. Zawierać musi także pojemniki (containers - these containers provide structure and functionality that facilitate the deployment, persistence, and execution of supported components) dla:
    1. client applications,
    2. servlets, oraz
    3. EJB components
  4. Obrazuje to następująct schemat:

Architektura Java EE jest pełna i wspiera wszystkie możliwe interakcje z aplikacjami (nawet tymi zewnętrznymi poprzez JCA - Java Connector Architecture). Jednak ta rozległość funkcjonalna powoduje duży narzut na zasoby w przypadku (najczęstszym) gdy potrzebne są tylko niektóre serwisy np. Web server/container, potrzebne są tylko servlets, JSPs i JDBC. Wygląda to tak. Tradycyjnie aplikacje w Java EE type Enterprise zawierają kombinację następujacych komponentów/technologii:

EAR files Java Servlets JavaServer Pages or JavaServer Faces Enterprise JavaBeans (EJB) Java Authentication and Authorization Service (JAAS) J2EE Connector Architecture JavaBeans Activation Framework (JAF) JavaMail Java Message Service (JMS) Java Persistence API (JPA) Java Transaction API (JTA) The Java Management Extensions (JMX) API Java API for XML Processing (JAXP) The Java API for XML-based RPC (JAX-RPC) The Java Architecture for XML Binding (JAXB) The SOAP with Attachments API for Java (SAAJ) Java Database Connectivity (JDBC) framework

Java Web Application zawierają zazwyczaj:

  • WAR files
  • Java Servlets
  • JavaServer Faces or JavaServer Pages
  • Java Database Connectivity (JDBC) framework

Bardziej skomplikowana architektura aplikacji typu enterprise wygląda tak:

sobota, lutego 09, 2008

Sobota - linki z FF:
  1. Firma Google ogłosiła nowa aplikację Google Apps Team Edition -umożliwia prace grupową
  2. Świetny kombajn muzyczny - http://www.dbpoweramp.com/
  3. Wtyczka w FF do Google Docs - http://www.gdocsbar.com/
  4. Wtyczka w FF do programowania strony - http://groups.csail.mit.edu/uid/chickenfoot/
  5. To samo, włącza dostęp do aplikacji google
  6. Ciekawy projekt na temat bezpieczeństwa aplikacji internetowych - http://www.aspnetpro.com/newsletterarticle/2007/09/asp200709dk_l/asp200709dk_l.asp
  7. Tworzenie modelu encji danych w .NET - http://msdn.microsoft.com/msdnmag/issues/08/02/DataPoints/default.aspx
  8. Nowy typ ataku aplikacji modelu Web 2.0 mimo stosowania SSL (bardzo niebezpieczne)- http://erratasec.blogspot.com/2008/01/more-sidejacking.html
  9. Ciekawy przykład:
  10. protected void PressButton_Click(object sender, EventArgs e)

    {

    string path = @"C:boot.ini";

    try

    {

    using (StreamReader reader = new StreamReader(path))

    {

    string content = reader.ReadToEnd();

    ResultsLabel.Text = content;

    }

    }

    catch (SecurityException secEx)

    {

    ResultsLabel.Text = secEx.ToString().Replace("rn", "<br>");

    }

    }

  11. Bardzo ciekawa strona - http://www.aspnetpro.com/
  12. Java:
    1. http://java.sun.com/docs/books/tutorial/deployment/jar/index.html
    2. http://java.sun.com/javase/6/docs/technotes/guides/jar/index.html
    3. http://java.sun.com/docs/books/tutorial/networking/urls/readingURL.html
  13. JavaScript - usability - http://www.webcredible.co.uk/user-friendly-resources/dom-scripting/form-usability.shtml
  14. Kryptografia - .NET - http://msdn2.microsoft.com/en-us/security/default.aspx
  15. MySQL przejęty przez Sun-a - http://www.betanews.com/article/Will_authorized_hosting_put_MySQL_on_a_par_with_Oracle_and_DB2/1202410783
  16. Portal do nauczania .NET - http://www.microsoft.com/learning/vstudio/2008/default.mspx
  17. SSL w Mozilla - http://www.mozilla.org/projects/security/pki/nss/ref/ssl/gtstd.html#1012305
  18. MS SQL Server - Bloby - http://www.sqlservercentral.com/articles/T-SQL/61679/
  19. MS Security - http://msdn2.microsoft.com/en-us/security/default.aspx

piątek, lutego 08, 2008

Piątek (ArsTechnica.com):

  1. Google kupił latem 2007 firmę Postini (lider w dziedzinie business security i antispam) i wykorzystuje jej IP do ochrony GoogleApps (http://arstechnica.com/news.ars/post/20080205-google-expands-business-options-thanks-to-postini-acquisition.html). Filtry antyspamowe są tanie 3$/rok i zgodne z wiekszością klientów pocztowych. Za 25$ na rok można mieć pocztę zarchiwizowaną i przechowywaną na serwerze. Ponad to dodał obsługę protokołu IMAP (znacznie wygodniejszego do zastosowań komercyjnych w IT, ale mającego większe wymagania od serwerów pocztowych. Jest to tzw. Team Edition, która powiązana jest nie z domeną firmy ale z poprawnymi kontami użytkowników założonymi w domenie firmy (taki jest warunek). Oferta jest bez obsługi poczty. Krytycy takie posunięcia zauważają pewne niebezpieczeństwo w zakresie ochrony danych i nawet większego obciążenia działu IT związanego z obsługą tych aplikacji.
  2. Dzisiaj ogłosił nową wersję Google Apps, którą można zainstalować w firmie bez udziału działu IT (http://arstechnica.com/news.ars/post/20080207-google-releases-new-team-edition-application-suite.html).
  3. Zachęta do korzystania z Google Apps (https://www.google.com/a/)
  4. Oferta dla partnerów np. jednokrotne logowanie - https://www.google.com/a/help/intl/pl/admins/partners.html
  5. Oferta dla programistów: http://code.google.com/apis/apps/
  6. Szuka konfiguracji usług google dla personalizacji.

środa, lutego 06, 2008

Popielec:

  1. Podpisywanie własnych programów to dobra rzecz, ale trzeba mieć certyfikat: http://www.wintellect.com/cs/blogs/jrobbins/archive/2007/12/21/code-signing-it-s-cheaper-and-easier-than-you-thought.aspx. Podpis wygląda tak:
  2. signtool sign /f YourFile.pfx /p <password> /t http://timestamp.comodoca.com/authenticode <files> gdzie .pfx pochodzi z wizarda exportu certyfikatów z repozytorium
  3. Więcej informacji na ten temat: http://msdn2.microsoft.com/en-us/library/aa387764.aspx
  4. Firma COMODO daje dużo: certyfikaty, firewall, antywirus itd.
  5. MS nie zapomina o potrzebie DLR (języków dla "mas") - świadczy o tym ostatnie sympozjum. Strona o JScript - http://blogs.msdn.com/jscript/archive/2007/05/07/introducing-managed-jscript.aspx. Są tam rekomendacje odnośnie optymalizacji kodu w JS pod IE.
  6. Klasy w JS:
    1. http://blogs.msdn.com/jscript/archive/2007/09/24/classes-in-jscript-part-i.aspx
    2. http://blogs.msdn.com/jscript/archive/2007/09/30/classes-in-jscript-part-ii-instance-properties-methods-class-properties-methods.aspx
    3. http://blogs.msdn.com/jscript/archive/2007/10/31/classes-in-jscript-part-iii-class-hierarchy-and-data-encapsulation.aspx
  7. IronPython - tutorial: http://www.voidspace.org.uk/ironpython/winforms/part3.shtml
  8. Blog twórcy IP - http://blogs.msdn.com/hugunin/
  9. Blog twórcy w IE - Scotta Gur...: http://weblogs.asp.net/scottgu/archive/2008/01/31/mix08.aspx
  10. IP -strona główna: http://www.codeplex.com/IronPython/Wiki/View.aspx?title=More%20Information&referringTitle=Home
  11. Jak ściągnąć dane z dowolnej strony w IE i zapisać na dysku - http://blogs.msdn.com/jscript/archive/2007/07/23/using-jscript-based-ie-add-on-to-export-data-from-any-website.aspx
  12. Strona MIX-a z MS: http://sessions.visitmix.com/
  13. Inne źródła informacji poza Google:
    1. Blogsearch - http://blogsearch.google.com/
    2. http://quacktrack.com/
    3. agregaty informacyjne - http://technorati.com/
    4. szukanie w blogu - http://www.blogdigger.com/

wtorek, lutego 05, 2008

Zasoby ciekawe do Informix'a

Informix ciągle zyje i ma się dobrze. Pod skrzydłami IBM rozwija się nadal:

  1. http://publib.boulder.ibm.com/infocenter/idshelp/v10/index.jsp?topic=/com.ibm.sqls.doc/sqls858.htm - o zrzucamiu BLOB-ów
  2. Strona główna o Informix w IBM: http://publib.boulder.ibm.com/infocenter/idshelp/v10/index.jsp?topic=/com.ibm.sqls.doc/sqls858.htm
    1. "This manual describes how to write user-defined routines (UDRs) in the Java programming language for IBM Informix Dynamic Server with J/Foundation. It also describes the infrastructure that enables you to run Java applications in the database server. It describes the Java classes, methods, and interfaces that allow you to access databases from within IBM Informix Dynamic Server with J/Foundation, rather than from a client application." - J/Foundation Developer's Guide . ()
    2. O JDBC
  3. Bardzo aktywnie działająca strona forum - http://www.iiug.org/Insider/insider_jan08.php#2.2
  4. Magazyn o Informix - http://www.informixmag.com/
  5. Grupa fanów Informixa - http://www.iiug.org/forums/technical.php
  6. Strefa Informixa - http://www.informix-zone.com/
  7. Lista ciekawych odnośników Informix - http://www.informix-zone.com/informix-url-list
  8. Nowa wersja Cheetah - Informix 11 - http://www.informix-zone.com/cheetah-resources#edu-web

ś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/


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