chao 的个人资料清凉水都照片日志列表更多 ![]() | 帮助 |
|
|
10月22日 IT非技术人员也要学一点技术这年头,做技术的是苦命的,做IT技术就更是苦命的。IT技术人员既要智商,又要情商。不光要技术过硬,还要有一定的艺术细胞,最好懂得各种行业的行业知识。而反观我们的IT内非技术人员呢?自诩是在高新技术产业中的高级人才,比编程这种民工级的活动要高级的多,对技术不屑一顾,反倒以不关注技术为荣。而反观其他行业,非技术人员都还是要懂得一些技术的,例如房屋格局的设计,你再异想天开也要符合物理学原理吧。那么IT行业真的是这么独特吗?技术人员可以拯救一切的吗?至少从我自身的经历来看,技术人员的能力真的有限的可怜,下面我就谈谈我的感受。 首先说说需求分析人员或者叫客户专员,总的来说这些人还真的不需要特意学习一些技术,只要平时用软件的时候留留心就够用了,知道哪些能做哪些不能做就行了;但是,如果项目中存在着不需要二次设计的东西时,就大不一样了,例如报表。国内的报表是出了名的难啊,对于一些古怪的报表,不是无法完成,就是制作成本太高(成分是老板控制的,技术人员做不了主),最终往往流产,给项目的验收带来麻烦。作为一个需求分析人员,是要对这种拿来就用的需求背后的技术有一定了解的,因为这些需求只有一道关,过了你这关,后续的其他环节就只有放行了。 接下来咱们再说说功能设计人员和UI设计人员,这部分设计人员往往是本业务很熟,会一些数据分析和流程控制相关的知识,深知客户的习惯。按理说只要最大满足客户需求,符合一般的设计规则进行设计就好了,不过这样设计往往会给整个软件或者项目带来意想不到的结果。 例如在功能页面的设计上,设计人员大多是知道不能设计过多的功能的,往往一个页面一个功能,但是就是这么简单的设计,也会让技术人员头痛不已。我就以一个简单的查询为例,为了满足当天的实时需求与月详细报告,设计人员将这两个需求合二为一,增加了时间范围的查询条件,从而满足了需求。从设计上看这没什么问题,但是从技术上看,问题就大了。实时数据属于联机事务,而月详细报告属于数据仓库,而这两者的技术配置完全相反,换句话说如果实时数据查询速度快了,那么月详细报告就慢了,反之亦然。从技术上说二者是不能合并的统一的。此外还有更来气的UI设计,光考虑用户体验了,完全不考虑如何获取和控制数据,经常出现只知道事件开始,不知道事件结束的UI设计,就好比你打个电话说你不久就回来,给你留门,却没有说什么时候回来一样。最后的技术解决办法只有定时监听来解决,多了的话大大降低软件的执行效率,好的UI效果也显示不出来了,反而带来更差的客户体验。更让人头痛就是横表显示的数据表格,从界面设计上看,完全没问题,但技术人员就犯难了,要不牺牲可扩展性,要不牺牲性能,没有一个两全的办法,更头痛的是开发体力劳动高,对于程序员这种四肢不勤的人来说简直是地狱。 所以我还是建议功能设计和UI设计人员学一些技术,至少要知道自己所设计软件的技术信息,如果有能力的话可以学学如何编程,设计完成后,可以简单的实现一下,看看是否可行,减少设计文档辗转于几个部门,返工的事件的发生。 最后就要谈谈项目经理了,这个已经是老生长谈了,在项目经理这个问题上,就不是懂不懂技术的问题了,项目经理不懂技术那软件基本就废了,就好比开车的人不知道开的是自动挡的还是手动挡的,不出事才怪呢。重点是项目经理是否懂得最新的技术发展,我就曾经遇到过这样一个项目经理,是从技术员提上来的,对自己过去的技术实力十分自豪,经常向我们讲述10年前利用Dephi开发的故事,可惜的是这位项目经理之后完全没有学习新的技术,管理方式还是Dephi开发的管理方式,对技术开发本身的评估不正确,基本上没有给技术人员改进现有模板和平台时间,大大降低了开发进度,还影响了质量。在软件生存周期中,开发和测试是项目中是很占时间的(现在开发已经占时间很少了,但要组织好才行),如果对现有开发技术不太了解的话,就会出现由于时间安排不合理造成的软件质量问题,这是公司高层最不愿看到的现象,项目经理的位子就危了。毕竟项目经理这个职位多数都不愿低下头来主动听取技术部门的意见,所以还是项目经理只好自己学学吧。 IT并不独特,和其他行业一样,设计与管理最终的目的都要通过IT技术实现,无法实现的设计与管理都是浪费时间与金钱,而技术人员还多是长颈鹿,看着精明,却不善言谈。所以为了自己,也为了别人,还是学点技术好,至少下次和技术人员吵架时不会被术语搞蒙,你说对不。 PS:最近被调到一个老项目组做扫尾工作,天天忙碌于由于非技术人员不懂技术所造成的技术问题,有所感触,特写此文,以发泄心中不快。 7月16日 ORACLE DBA/USER操作获取数据表主键SQL(Oracle) USER_CONS_COLUMNS D,USER_CONSTRAINTS M ORACLE DBA_ TABLES 因此,可以从ALL_TABLES中取得隶属于指定用户的表: 也可以不指定用户名,从而取得所有的表。 因此,可以从ALL_TAB_COLUMNS中取得隶属于指定用户的表: 因此,可以从ALL_VIEWS中取得隶属于指定用户的视图: 对象类型有: 因此,取得存储过程可以用: 同样,取得其他的对象也可以用这个方法,包括表,视图等。 因此,取得存储过程源代码的方法: 取得函数内容可以用: 因此,可以从ALL_ TRIGGERS中取得隶属于指定用户的触发器: 取得触发器内容的方法: 因此,可以从ALL_ INDEXES中取得隶属于指定用户的索引: 取得索引相关的列的方法: 因此,可以从ALL_USERS中取得用户: 取得角色方法: 因此,可以从DBA_DB_LINKS中取得连接: 同义词 取得程序包内容可以用: 取得程序包内容可以用: WCF服务端发送自定错误[ServiceContract] [FaltException(typeof(CustomException))] CustomException是序列化数据 ServiceDebugBehavior debug = new ServiceDebugBehavior(); debug.IncludeExceptionDetailInFaults = fales; ServiceHost.Description.Behaviors.Add(debug)前要先清除自动生成Debug行为 ServiceHost.Description.Behaviors.Remove<ServiceDebugBehavior>();因为会自动生成而Behaviors是一个KeyTypeOfCollection,因此无法容下两个同类型的对象。
客户端截获用Cath(FaultException<CustomException> ex),注意这个ex的类型是FaultException,如果想要用自己的错误类型,需要这样:ex.Details,这样返回的就是CustomException了,之后就可以获取自定的信息和操作了。 3月21日 PL/SQL FORALL语句的一些注意事项1.对于引用的处理 Forall i in tab.First .. tab.Last 这样是无法编译通过的,所以不要指望用Selete * Bulk Collecte into row_tab到一个记录集合,在通过FORALL的方式来快速处理表格数据了,要做的话只能用标准SQL语句解决了,或者一列一列的改(注:多集合的情况下,FORALL会默认按FOR……LOOP的方式处理数据,就谈不上优化了)。 2.关于异常处理的一些例外和机制猜想 Declare v_tab t_tab := t_tab('1','2','3','4','5','6'); BEGIN FORALL i IN v_tab.FIRST .. v_tab.LAST SAVE EXCEPTIONS DBMS_OUTPUT.PUT_LINE('END'); EXCEPTIONS
这个结果是不是看起来很奇怪,如果按照无SAVE EXCEPTIONS的情况下去想,那么结果都应该为Unchanged,如果按照有SAVE EXCEPTIONS的一般情况来想则6应当为Changed。 根据FORALL的处理流程和上面的结果,我个人认为FORALL在执行的时候是这样的: 1.生成所有集合记录执行的DML语句 因为只提交一次DML所以在集合中有多条集合时,效率会大大优于For……Loop。那么产生上述问题的原因就在第一步生成DML语句的时候了。由于1和2的数据不存在,无法产生DML语句,于是继续检索后面的集合,到3的时候可以正常生成。到5的时候又不能生成了,关键点就在这之后的处理了,引擎并没有尝试去生成后面的语句,而是直接跳出的生成环节,所以6理所当然的没有被更新了,因为根本没有生成对应的语句。 因此对于添加SAVE EXCEPTIONS的FORALL的错误处理,是分为两个部分的: 1.在生成语句阶段,引擎是从生成第一个正常语句开始到再遇到错误截止,换句话说只能跳过头部的连续错误,而中间的错误会影响其后面的操作。 最后,建议各位在使用FORALL的时候最好用变长数组(VARRAY)不要用 嵌套表(TABLE),嵌套表是不连续的,而且变长数组(VARRAY)可以避免删除操作,如果实在需要用嵌套表(TABLE)的话,一定要记得检查是否有空数据,然后用TRIM彻底删除后,再用FORALL执行,以避免发生上述问题。 9月17日 .Net(C#)结合IntelliSense写文档注释作者:e-bread 在使用VisualStudio的时候,大家可能对内置的IntelliSense功能赞叹不已。高高兴兴的自己写个类,发现这个所谓的IntelliSense并不买账,怎样才能实现.Net系统库那样的IntelliSense功能呢?其实.Net内置了一个XML文档注释功能,VisualStudio可以根据生成的XML文档注释内容,通过反射机制,从而实现IntelliSense功能。当然如果你对反射足够了解,也可以自己分析生成的XML文档,不过这部分不是我们这次关注的问题。 打开MSDN,搜索XML文档注释,你会发现.Net提供了大量的文档注释标记,实际上多数标签对于VisualStudio的IntelliSense来说是没有用的,能用上的也就那么几个,其余的是做其它用处的,例如类型检测等,由于是初步,也就不多说了。啰嗦了半天,下面进入正题,能被IntelliSense识别的标签是:<summary>,<param>,<exception>,换句话说只有这三个标签的内容会显示在快捷信息中。下面我们看一个例子。 /// <summary> 细心的人应当发现了,这里注释行前用了三个"/"而不是常用的两个"/",这是XML文档注释的特征,说明这些注释是要编译的,否则不编译。当然类似块注释,XML注释也可以用"/** */"进行块注释。不过和一般的块注释不同,XML 的注释块中间的每行前都要加一个"*",看起来是这个样子: /** 个人感觉还不如单行方便,而且VisualStudio在块的情况下的IntelliSense支持不好,不会自动添加结束标签,个人不建议使用这种注释方式。 由于是XML文档注释,因此除了前面的“///”外,格式是符合XML规范的,<summary>标签显示对应的摘要信息,<exception>则根据"cref"引用的类型显示异常信息,这两个标签会在IntelliSense成员列表的快速信息中显示,以上面的例子显示如下:
对于<param>标签,则根据"cref"引用的参数名,根据你在键入的对应函数显示对应的提示信息,例如你在上例中输入参数fl,则快捷信息显示为:
我们可以发现异常信息并没有显示出来,并不是VisualStudio没有识别,只不过没有放在快捷信息中,打开对象浏览器(object browser)这些信息就出来了,其实想<remark>,<returns>也会显示在对象浏览器中,不会显示在快捷信息中。因此我们可以将备注信息和返回值的详细信息写在这两个标签中,当需要查看是可以到对象浏览器中仔细查看。 只要遵守XML注释规范,那么你的代码也可以智能感知,花一点时间写这些注释,会大大提高后面的工作效率,多人合作更是如此,还不赶快去试试! WPF中Page的历史恢复机制WPF中的Page调用States类中的Replay方法恢复Page(换句话说原Page的恢复信息保存在State中),
虽然自定义了State,不过WPF可不认这一套,最后还要我们将自定State手动记录下来,通过NavigationService的AddBackEntry(CustomContentState)来存储State就可以了,在想存储的地方调用这个方法就可以实现自定义历史记录了,如果根据用户的特定操作记录的话,还可以实现历史回顾特性的撤销功能,和PS很像(不过这个实在历史记录按钮里) 由于自定了State,WPF原有的历史功能就不好用了,因为它在历史功能中存储的还是系统默认的State,这可不是我们想要的结果。于是要自己写个历史程序,还好只要Page继承IProvideCustomContentState接口就可以了。 IProvideCustomContentState提供一个抽象函数 public CustomContenState GetContentState(),GetContentState()在Page触发历史变更按钮的时候触发,返回CustomContentState,所以我们可以返回自己的State,从而存储自定义State,实现历史功能。在返回自定义State前要给JournalName赋值,用于标识不同的State。 此外,WPF对历史页面调用GetContentState()存储State进行了位置检测,换句话说,如果你在历史界面继续跳转,那么除了传入的State会变外(看你怎么生成传入的State了),State在历史记录中的位置是不会变的, 举个例子,例如你跳转到第二步的Page,名称为Step2,在历史展开列表中从下向上数在第二位置,对页面数据无改动后继续跳转,GetContentState()触发,将传回的Sate中的JournalName改为Step5,那么历史列表中从下向上数第2项更名为Step5 而不是列表的第5项。当然如果你对页面数据进行了修改,那么这个就是倒数第二个 总结一下,自定义历史记录的实现过程,首先通过继承抽象类CustomContenState,实现Replay(NavigationService navigationService, NavigationMode mode)方法,再在Page页中利用NavigationService的AddBackEntry(CustomContentState)存储历史信息。最后通过将Page页继承IProvideCustomContentState接口,实现GetContentState()方法,实现历史按钮的功能,至此WPF中Page自定义历史恢复完全实现。 椋鸟:草原灭蝗的“生物武器”[组图]_中国网
椋鸟:草原灭蝗的“生物武器”[组图]_中国网
南极气温上升导致小企鹅大量冻死_中国网
.NET获取IP等信息 - jenner-lin - 博客园
得GridView的EmptyDataTemplate中的控件 - kingwkb的专栏 - CSDNBlog
7月30日 ASPNET,ASP.NET 2.0配合MasterPage的优化CSS
6月29日 MES的解释del.icio.us标签: mes Manufacturing Execution System (MES): A factory floor information and communication system with several functional capabilities. It includes functions such as resource allocation and status, operation/detailed scheduling, dispatching production units, document control, data collection and acquisition, labor management, quality management, process management, maintenance management, product tracking and genealogy, and performance analysis. It can provide feedback from the factory floor on a real-time basis. It interfaces with and complements ERP systems. 3月31日 手动安装Virtual PC 2007的Virtual Machine Network Services今天为了安装SQL Server,同时也想试试VS2008。在无奈的看着自己的正版XP Home版后,终于下定决心安装VPC2007,不幸的是安装后提示无法连接网络,在上网查阅了后,找到了一篇繁体的解决办法,由于两地的系统文字显示不同,尝试了n次后成功,为了防止自己忘记,于是在上班时间写了这个。 首先确认自己安装了VPC,并且出现了无法连接的错误,然后开始手动安装。 然后打开“网络连接”,右击自己的物理连接,在快捷菜单中选择“属性”,在中间的连接选项中查看是否有“Virtual Machine NetWork Services”的选项,应该没有的。确认工作完毕,开始添加。 单击左下角的“添加”按钮,在弹出的菜单中选择“服务”,再在新弹出的窗体中单击右下的“从磁盘安装”,在路径中选择安装文件, 确认后就开始了安装,安装后可能出现网络连接属性无法关闭的情况,重新启动就好了(谁让咱的是Home的呢!),重启后看看本地连接的服务中赫然出现了“Virtual Machine NetWork Services”的选项,赶紧选中它吧。 下面是具体操作图示(没有截打开网络链接的图,玩这个的大都搞开发吧,应该都会) Step3:输入安装文件路径,安装(路径参考上面文字部分的说明) 2月6日 新的一年要来了新的一年要来了,时间过的真是快啊,想想自己这半年也马马虎虎的过来了,找工作是东撞西撞的,最后还是回到了IT与国企,也许这才是自己的愿望吧。节前取做了个兼职,赚了将近2千块大元,还是满高兴的。特别是学生真的很好,要不是考虑到自己的未来,还真是想留下来,现实和理想就是这么有差距,没办法。 这半年真是感觉到了人情的温暖,曾经的好友、陌生人都给了我很多的帮助,要是没有他们,我估计已经崩溃了。昨天和个老网友聊了聊,大家都找工作了,都成熟了、现实了。看来人还是直接放到社会中取成长快啊。总的来说这一年还算是过的不错,也没什么遗憾了。硬说的话,可能就是一个老朋友没有了音信,当年承诺要回来的,所以也就没有说什么,太久没有消息了,不知道我们是否还能在今天看到祝福对方。早知道那天我就请她了,呵呵。 明年本命年了,自己也两轮了,是该立业的时候了,自己也要好好加油了,这里也祝所有帮过我的我认识和我不认识的人新年快乐,事事顺心,好人万事如意。 10月5日 谁发明了第一台电子计算机今天看了《程序员》2007年10月刊,发现一片由袁传宽博士发表的《再谈谁是真正的“电子计算机之父”》。在这篇文章中,作者称现在我们教科书上所写的ENIAC并不是第一台电子计算机,ENIAC是剽窃了由阿坦哪索夫和贝里与1939到1942年之间在衣阿华州立大学说制造的电子计算机ABC。更让我惊奇的是这个案件于1973年10月19日就已经终审判决了,而我们的教科书现在还写的是ENIAC,莫名其妙啊。 这种事情在计算机行业已经不是一次两次了,想想最早的计算机体系的提出者,大部分人认为是美国的冯·诺伊曼,其实英国的图灵早于他之前就写出了,不过没有发表而已,在图灵看来最早的那个还不完善,于是第一的称号就被夺走了。当然这还不是最重要的,在现在的计算机行业,我们越来越对起始这一东西不敏感了,只要用到就好,例如我听到一堆人跟我说Bloger像Sina的博客,到底谁模仿谁啊,Sina那点功能还叫博客?看看现在的Yahoo!Pipes和微软的PopFly,也许之后又有一群人跟我说微软真是天才,PopFly的点子太好了,殊不知那时抄袭的。所以说有时间还是溯溯源吧,以不至于某一天我们对子孙说“看整个世界都是我一个人造的!” (PS:看完文章后感叹了一下图灵的人生,又加上最近看了一些悲剧的东西,一时兴起,不知所云) 9月22日 ASP.NET页面间传递参数的方法好久没编程序了,看见许多人在网上找页面间传参的方式,就简单的写点,也算留个备份。 主要来将有两种:Get与Post,至于两者的区别,还是自己找相关的资料吧,多的很,这里具体讲下操作。在ASP.Net中,获取参数一般都是在Page_Load的时候,当然你也可以在其他的地方调用,看情况而定。先拿Get来说,传入的URL是 ~\food_info.aspx?food_id={0}
那么对应的接受方法为 Request.QueryString.GetValues("food_id").GetValue(0)
剩下的工作就是对接受的数据进行转换了,如果你有好几个food_id的值的话,更改GetValue中的数字就可以了。 不过这种参数传递安全性是个问题,毕竟参数公开了,即使加密也不安全。所以就要利用到Post的方法,在发送页面中可以用Form的Action属性设置传入页面,也可用每个控件的PostBackUrl来配置,发送后,就是接受了,这个要实现的判断一下,下面结合代码说明。 if (Page.PreviousPage != null) { Response.Write(Page.PreviousPage.Form.Method.ToString()+"<br/>"); Label lab2 = (Label)Page.PreviousPage.FindControl("lab1"); Response.Write(lab2.Text.ToString()); } 首先判断一下是否有传入页面,判断Page.PreviousPage是否为空,不为空在做相应的事情,聪明的你应该想到了,如果判断一下是来自哪个页面的不更好,的确,可以实现一些更复杂的功能,不过也相应的加大了服务器的负担,要根据实际的业务流程来看。下面就是两种获取方法了,可以从Form中获取,也可以直接获取控件的名称,注意这里要类型转换,所以要记住类型。如果是纯控件设计,就直接找控件好了,如果不行就用Form的方法了,根据个人喜好了。 好了就简单的介绍了一下,如果还有什么问题,留言给我,大家讨论才有趣嘛!!! 9月18日 教育实习磨难记——第一回 大开眼界del.icio.us 标记: 教育实习 中国教育 国内教育 今天终于开始了生平的第一次教育实习,最终的结果就是我们连教学都没有发生就回来了,无所事事的度过了漫长的80分钟(真的很长,不信你也试试。)也许是自己太过于理想,也可能是太想做好这件事了。上完这节课后真是愤怒、可怜与悲哀啊!看着那些懵懂少年我真的是不知道说什么好,搞教育的人看中国(让我这么称呼吧,我是在是自豪不起来了)的现实教育就一个感觉,伪善的教育。 首先发下牢骚,都憋了将近3个小时了,总要发泄一下吧。这次到一个北师大人都知道的实习学校去实习,是一个私立的学校,说是当地的不错的学校,的确接我们的车是很好的,大家都怀着喜悦坐上了车。经过一个小时的颠簸,我们到了校区,我的天啊!这学校的墙面怎么和外面的公共厕所一个样子,就不能清洁一下吗?好戏才刚刚开始,我们直接进入了会议厅,这里倒还说的过去,不过指导老师怎么只有3个,一打听是辅导化学,数学和物理的,那其他科目的人呢?让我们拿着两次课的教案来,却见不到人,给谁看啊!也没关系,我们自己看材料,翻了几张,怎么都是2005和2006年的,今年的呢?马上就08年了,07年上半年他们没上课吗?没记得新课改都改到假期都变了的地步吧,都算了,直接上课得了。于是我们一行4个人开始去机房教计算机得了,到了中学四层,发现所有的机房都有人上课,那我们去哪?看了看手中的地址,没错啊,在看看身边的学生,的确是我们班的,是在这儿上课啊,教室呢?于是到处找人找到了管理人员,一问人家根本不知道,我晕。于是就临时安排了一个机房,好了,总算可以上课了,打开教师的电脑,我靠!Windows98!我没带驱动盘!而且我也没有驱动盘,考虑对方的PowerPoint的版本问题,我还做了打包,可以应付一切的PPT不能播放问题,可人家比我想的还狠,干脆不能读U盘。想考我,没关系,我还能上网,我们先讲博客文化就可以了,我上博客,“你的浏览器版本过低,请及时更新。”这是我第一次看到浏览器版本低的错误,这回开眼界了,算了都不讲了,就基本的Windows操作吧,好慢啊~~~~眼睛花了?怎么是MHz,再看看看内存56M(8M被显卡吃了),终于在这个年代见到和我家老电脑一样的配置了,记得我卖家里电脑的时候,人家收的人都说这配置没人要了,处理还要单交钱,更重要的是我的比他这里的要好。看着40台废料,我只好故作镇定,先看看学生吧,高一的、高二的、初一的、初二的、初三的。怎么记得我们只教初中,高中的都来了,人名单上确确实实写着人家的名字,那就上吧,可是上什么啊?没东西啊,真是巧妇难为无米之炊,在宣讲了基本的课程要求后,只好让大家随便玩了,看着他们那老旧的游戏,我都怀疑自己是在北京教学。在回头看看漆黑的木质黑板,自己都怀疑是在2007年活着。感觉自己那一刻回到了过去,在现在体验过去,真是开眼了。 发完了牢骚,开始正说点正经的,先说说这家学校。在看他们的宣传手册的时候,我就感觉这个学校不怎么好,虽然得的荣誉不少,但是都是软指标的奖项,没有几个是硬指标的。此外,到了学校看了看他们今年毕业上的情况,小学和初中还好,高中却只有一个人上了北大,在北京上过学的人都应该知道,如果一个北京的高中每年只有一个人上北大清华这样的学校,那就是说这个学校教学有问题。一般的区重点会有7-8个人,像我们原来的高中上个30来个不是问题。这些还不是问题,问题的关键是,我们上的是要计入学生学分的课程,关心北京教育的人都应该知道,今年北京开始在高中实行学分制,这么重要的课程要我们每周讲2课时就过去了,而且都是我认为的非职业化的教育。为什么要实行学分制,就是在高中实行半职业化,想想我们当年有多上人在上大学的时候就有专业的素养,这是我们本科与国外的差距,我们花费本科的时间去培养专业素养,话研究生的时间去学习做事情,而国外在高中的时候就做好了,因此人家比我们有专业。所以典型的面子工程,最让我气愤的是学校在大把大把的拿去学生家里的钱的时候,却没有给学生以应有的学习环境。上面我说的机房是其中的一个例子,许多活动室的黑板也是木质的,你们就不能花几十块前买个好的吗?看看接我们的豪华客车,在看看教室,钱到那里去了,大家都明白了,我也明白了,为什么好学校的老师待遇低,不好学校老师的待遇反而高,我的确明白了,更可怕的是这还被评为当地最好的学校,看看学校名称上的“北京师范大学附属中学”,看看我们这些北京师范大学的教师,被蒙蔽的人应当不少吧,想想当地的学生,想想自己被买了都不知道,我真是~~~想想那句“就中国的教育体制,在过30年也不可能有人获得诺贝尔奖”,于是网上有人说到了50年,现在看来要再加50年了。 接下来说说学生,我只能用可怜来形容,我们被告知这些孩子许多都是单亲家庭或者是留守儿童,虽然他们的家庭十分的富足,但是根本得不到爱。而且在学校里,这些孩子还是得不到爱。在我接这个班的时候,我就被告知上这个兴趣班的人是学习不好的,换句话说是被学校抛弃的学生,听到这个我就十分的震惊,作为一个教育工作者,连这点基本常识都没有吗?世界上生来是不存在没用的人的,只有创造无用的人的世界。当然我这并不是信口雌黄,其实在心理学的“人本主义”中,就坚定的认为人是有自发向上的力量的,有时是人自己隐藏起来了,因此人本主义的咨询师就让来访者发现这种力量从而改变。下面我就举例说明我们班的学生是有可取之处的。首先我先说说我们班的一个小姑娘,她自己的博客有每天有上百的点击率,我试问一下,你的博客有这么高的点击率吗?这不是她出色的一面吗?还有一个孩子,自己用简单的线条在电脑上绘画,卡通风格的,十分到位,这不也是优点吗?最后说说玩游戏的高中生,每个人都希望自己能玩的更好,比人家好,多么明显的力量,那个十分随意的学生,偶尔也会帮我大吼一声,维持下秩序,这不都是优点吗?可惜那些老师看不到,学生就这么被压抑了好多年,心理都扭曲了。在家中,家长有限制他们的自由,不能上网,把唯一能从外界得到爱的途径有封锁了。像班中的一个学生虽然能够天天回家,但是到9点才接他,说是让他好好在学校上自习,我宁可相信这是真的,而不是家长推脱的接口,就这样情况在那里都少的可怜。于是在这样没有爱的环境中,成长除了这缺少爱的学生,从学生、老师、学校,上到国家都太悲哀和可怜了。 最后谈谈自己,从这次实习中还是给自己了一些启示,看着学生自大,发现自己也未尝不是,在自己的小圈子里,认为自己什么都会,其实什么也不会。我们在一个封闭的教育环境中,每次的升级只是扩大了原有的封闭环境,并没有开放出去,于是当我们涨满了,就夜郎自大了起来。直到上了社会,上了国际,才发现我们是如此的渺小。此外,想出国了,真是无奈啊,也许我是逃避了,不过我承认我没这个能力去改变什么,想想自己做志愿者,最终大家只能无奈的摇头,我们的确可以做点什么,不过就是这么一点,什么也改变不了,只是做了,不会在历史上留下一点的痕迹,不会铭记在人们的心中,只会存在于爷爷给孙子讲述自己年轻时的英勇故事中,然后被后人遗忘。我决定去选择逃避试试,与其让心死掉,还不如逃避,至少我可能在国外混好后,回来教育国人一番,然后被推为哲人后大摇大摆的离开,再指着地图上的这个国家说,他们应当感谢我,要没有我就……出去,至少我还能保住心,至少我还能正视他人,至少我还能养的起我的父母,至少我还能说我是为了这个国家而出国,至少我改变了我自己。 |
|
|