博文

[置顶] 中国程序员之现状(2006-07-24 17:43:00)

摘要:一个老程序员的心里话--中国程序员之现状
转自 先飞电脑技术资讯网 刘光勇 (本来不想写的,实在不想看到某些人误人子弟,混淆视听,耽误了中国IT的未来,所以一吐为快) 一些人总是发出一些错误的声音,形成了劣胜优汰可怕的现象。他们在误导着中国,把我们的后继军训练成软件蓝领――――胸无大志,目光短浅,稍有点成绩就自满就自高自大的人,浑不知天外有天,外国正在虎视眈眈盯着中国的庞大市场。 由于软件蓝领的呼声人们不再致力于培养大批的高精尖人才,掌握国际尖端技术的人。而是花费心思培训一群猪出来给外国人利用。把自己的命运交给了外国人手里。结果,在最容易的管理软件领域也输给外国人,外国人派几个人过来,利用中国的劳动力,开发出软件,再卖给中国。大量的利润到了外国人手里。而我们的中的一些人还在沾沾自喜:外国人给的工资高;外国的软件好。 奴才! 低品质产品是没人要的。软件蓝领也不例外。 他们不知道中国制造一个优秀程序员的难度,还在患红眼病。程序员制造,你可算过成为一个程序的高昂代价?没日没夜地工作,没有女朋友,感情是一片沙漠,没有钱打工者的命运是悲惨的。 真想知道究竟是哪个公司的程序员为了五十块钱跳槽,是哪个公司说需要软件蓝领。 在马年,过春节,万家欢乐的时候,程序员们还在工作,用他们瘦弱的身躯,支撑起中国的软件工业。 他们把不思进取比喻为工作稳定。 国外可以在一个单位效力几十年。在国内不行。为什么?没有培训,没有上升机会。你被压榨完后就被扔掉。哪个有志向的人甘于这样的命运? 中国的程序员是世界上最好的程序员。他们不计报酬,没日没夜地工作。没有女朋友,没有节假日,可能几年后他们一无所有。他们仍在加班。 一、程序员为什么要跳槽?有两个报道: 1、“程序员为了五十块钱就跳槽”“万元月薪请不动程序员”“20%的程序员跳槽后都去了外企” 2、印度的程序员比中国稳定。 另有两个报道: 1、本科生去美国工作两年后即可年薪10万美元。当然,他们是加薪很快。 2、国外的企业都有培训。很吸引人。许多人是冲着培训去的。 国外可以在一个单位效力几十年。在国内不行。为什么?没有培训,没有上升机会。你被压榨完后就被扔掉。哪个有志向的人甘于这样的命运? 中国的程序员是世界上最好的程序员。他们不计报酬,没日没夜地工作。没有女朋友,没有节假......

阅读全文(3655) | 评论:2

最完的htaccess文件用法收集整理(2010-12-05 23:13:00)

摘要: 1.时区设置
有些时候,当你在PHP里使用date或mktime函数时,由于时区的不同,它会显示出一些很奇怪的信息。下面是解决这个问题的方法之一。就是设置你的服务器的时区。你可以在这里找到所有支持的时区的清单。 1.SetEnv TZ Australia/Melbourne  2. 搜索引擎友好的301永久转向方法
为什么这是搜索引擎友好的呢?因为现在很多现代的搜索引擎都有能根据检查301永久转向来更新它现有的记录的功能。 1.Redirect 301 http://www.aqee.net/home http://www.aqee.net/ 
3. 屏蔽下载对话框
通常,当你下载东西的时候,你会看到一个对话框询问你是保持这个文件还是直接打开它。如果你不想看到这个东西,你可以把下面的一段代码放到你的.htaccess文件里。 1.AddType application/octet-stream .pdf 
2.AddType application/octet-stream .zip 
3.AddType application/octet-stream .mov 
4. 省去www前缀
SEO的一个原则是,确保你的网站只有一个URL。因此,你需要把所有的通过www的访问转向的非www,或者反这来。 1.RewriteEngine On 
2.RewriteBase / 
3.RewriteCond %{HTTP_HOST} ^www.lvtao.net [NC] 
4.RewriteRule ^(.*)$ http://lvtao.net/$1 [L,R=301] 
5. 个性化Error页面
对每个错误代码定制自己个性化的错误页面。 1.ErrorDocument 401 /error/401.php 
2.ErrorDocument 403 /error/403.php 
3.ErrorDocument 404 ......

阅读全文(3281) | 评论:3

使用JQuery和ASP打造AutoComplete功能(2009-03-23 12:51:00)

摘要:客户端代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>使用JQuery和ASP打造AutoComplete功能</title>
<script type="text/javascript" src="js/jquery-1.2.1.pack.js"></script>
<script type="text/javascript">
 function lookup(inputString) {
  if(inputString.length == 0) {
   // Hide the suggestion box.
   $('#suggestions').hide();
  } else {
   $.post("showmember.asp", {queryString: ""+escape(inputString)+""}, function(data){
    if(data.length >0) {
     $('#suggestions').show();
     $('#autoSuggestionsList').html(unescape(data));
    }<......

阅读全文(3123) | 评论:0

(翻译)泛型类型介绍(2008-09-14 16:56:00)

摘要:原文:http://en.csharp-online.net/Generic_types 内容: 1、为什么使用泛型? 2、泛型等价 3、专业述语    3.1、类型参数    3.2、类型引用    3.3、开放类型    3.4、构造类型    3.5、开放构造类型    3.6、关闭构造类型 4、基于类型参数的约束 5、泛型类 6、泛型接口     6.1、定义一个泛型接口 7、泛型委托 完整的翻译请浏览:http://www.cnblogs.com/goalbell/articles/Csharp_Generic_Types_Introduction.html......

阅读全文(2522) | 评论:0

DOM操作示例学习PartI(2008-08-14 00:03:00)

摘要:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  <title>Dom</title>
  <script language="JavaScript">
     function create(){  //创建一个li元素,并把添加到 元素id为domli1之前.
      var domdiv=document.getElementById('domul');
      var domli=document.createElement('li');
      var domlie=document.createTextNode('domli3');
      domli.appendChild(domlie);
      domdiv.appendChild(domli);
      domli.setAttribute('id','domli3');
      domdiv.insertBefore(document.getElementById('domli3'),document.getElementById('domli1'));
   }
  ......

阅读全文(1824) | 评论:0

使用ASP创建数组(2008-08-09 11:28:00)

摘要:<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%> <%
 '判断传递的值是否为数组,如果为空的话,就分配一个空数组
  function arrayize(value)
    if isarray(value) then
        arrayize=value
   elseif isEmpty(value) then
        arrayize=array()
   else
        arrayize=array(value)
   end if
  end function        
 
  function [](value)
    []=arrayize(value)
  end function 
%> <%
  '打印数组
  sub println(line)
     for each l in [](line)
        response.write(l)
      next
  end sub     
%>
<%
'调用println过程
call println(array("BEJ"," OLYMPIC", " GAME"," I"," LOVE"," CHINA"))
......

阅读全文(3030) | 评论:0

体验JQuery的Selectors(Part I)(2008-06-19 00:47:00)

摘要:    接着上一篇文章,从这篇文章起,开始敲开了学习JQuery的大门了。最后我会分享下JQuery的Cheat Sheet。这里只会介绍些基础的JQuery以及Cure javascript的资料。在以后的学习日子里,我会介绍些面向对象编程知识和C#泛型、算法等基础知识。    首先来看看$()的特性,这里的作用只不过是用来简便获取标签名的手法,其实可以在javascript的dom方法中可以用document.getElementsByTagName()来获取元素的Tag Name。好了阐述一下$()的使用方法:      ID:#myid用来获取元素的ID属性。$('#myid'),不管它的Tag Name是什么,匹配唯一元素的ID为myid属性。这里的唯一,依我的理解是相对于ID而言的。例如(省略了相关标签):    $('#myid').css("border","3px solid #FF0000");
   $("p#myid").css("border","3px solid #000000");

   <p id="myid">Hello World!</p>
   <div id="myid">Hello JQuery!</div>
  
 它执行的结果是作用于显示段落元素p的样式。这个因为在document中,每一个ID仅可以使用一次,并且是唯一的。所以它会首先匹配第一个元素p。   Class:.myclass用来获取元素的css类名。$('.myid')用来匹配元素中含有myid的css类名。例如:      $('p.myid').css("border","3px solid #FF0000");
     $('div.myid1').css("border","3px solid #000000");   ......

阅读全文(1889) | 评论:0

体验JQuery的万能selectors(2008-06-15 18:26:00)

摘要:  用JQuery这个强大而优秀的javascript库做了一个简单的反馈表单,因为这几天都在看JQuery的有关资料,所以接下来的几日,我为陆续介绍下JQuery的有关特性。我都是刚刚开始学的,开始看<<JQuery Reference Guide>>和JQuery官方上的有关文档资料,都是配合起来看效果好很多。看了一下,体验一下JQuery的Selectors特性。 Cure  Code:          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=GB2312">
  <title>Simple form</title>
  <script language="JavaScript"  src="lib/jquery/jquery.js"></script>
     <script language="JavaScript">
         $(document).ready(function(){
    $('span#title').css("border","3px solid #FF0000");
    $('p>span').css("border-bottom","1px dotted #000000");
    $('dt>lab......

阅读全文(1830) | 评论:0

使用ASP.NET2.0建立三层架构的web应用程序系列(2008-04-18 21:03:00)

摘要:使用ASP.NET2.0建立三层架构的web应用程序系列Part1 使用ASP.NET2.0建立三层架构的web应用程序系列Part2 使用ASP.NET2.0建立三层架构的web应用程序系列Part3......

阅读全文(2738) | 评论:0

(翻译)ASP.NET的基础知识(2008-03-27 22:41:00)

摘要://------------------------------------------------------------------ 翻译:ASP.NET Basics: Foundation of ASP.NET 译者:goalbell E-mail:goalbell@gmail.com //------------------------------------------------------------------ 以下是来自一些一起合并的资源: 什么是ASP.NET? Microsoft ASP.NET是一种服务器端的技术,能够使到编程人员建立动态网站、web应用程序,以及XML Web服务。它是.NET基于建立CLR环境上的一部分。因此编程人员可以使用任何.NET兼容的语言来编写ASP.NET代码。 ASP.NET 1.1与ASP.NET 2.0之间有什么区别? 一个包括ASP.NET 1.1与ASP.NET 2.0之间有什么区别的图表可以在这里(http://www.codeproject.com/aspnet/ComparisonASP1xASP20.asp)找到。 哪个是ASP.NET最新的版本?先前发布的版本是什么? 最新的ASP.NET版本是2.0。以下是有三个ASP.NET版本发布的日期: ASP.NET 1.0 -在2002.1.16发布 ASP.NET1.1-在2003.4.24发布 ASP.NET2.0-在2005.11.7发布 另外,ASP.NET3.5在2007年底试验性地发布。 解释ASP.NET2.0的事件生命周期?(详细参考:http://www.cnblogs.com/me-sa/archive/2008/03/17/LifeCycle.html) 这些事件发生在以下的顺序。最好打开跟踪(tracing)(<% @Page Trace="true"%>)以及跟踪以下的事件: PreInit - 这个事件代表页面生命周期的入口点。如果你需要以编程的方式(programmatically)改变模版页(Master page)或者主题,然后这会触发该事件。动态控件被创建在这个事件里面。 Init - 在控件集合的每一个控件被初始化。 Init Complete - 页面已......

阅读全文(3001) | 评论:0