Thursday, December 25, 2025

教职员名单-SSPA等级

        2025年,联邦政府采用SSPA制度。碍于2025学年比较紧凑,一直没有从2023年的《同步显示教师等级的教师名单》中更新采用SSPA制度的教职员名单。

        今天,趁着2025年圣诞节假期,就重新整理好,依据SSPA制度下的学校教职员名单统计分析啦。(现有档案可容纳81教育工作者,3个教职员,用户可以自行增加rows以便处理)

        点击浏览SENARAI NAMA GURU &  KAKITANGAN SEKOLAH SSPA-to share。点选 File > Make a copy 或 download即可拥有  啦。

祝福大家:圣诞节平安健康。:)


Thursday, December 18, 2025

大大赋能予CM7

CM7,是每一所学校谷歌课室管理员中的,属于科目主任的账号。账号隶属学校而不是个人拥有。试问,学校得力马/谷歌课室管理员,可以如何有效使用CM7的账号?如何大大赋能予学校12个科目的主任?建立有效的数码档案呢?

        但,在开始解说前,先了解,为什么使用CM7账户处理,而不使用副校长个人的力马电邮处理。

        站在人性心理的出发点,老师们会觉得:做得事情,都保存在副校长个人的云端硬盘中的话,确实不妥当。加上很多老师或有多疑的个性(其实都希望弄清楚而已啦),所以难免会有难以推行实践的情况。

        但,今天分享的,却是使用CM7的账户准备。然而,若想让老师们支持,就要进一步解释建设和使用过程。

        CM7的账户,是依据学校使用而不是个人使用的。老师们最不希望看见的,就是自己的心血被某学管理层夹持带走。老师们最希望的,就是自己有档案,也贡献学校(完成工作)。所以,CM7账户是依据学校的这个重点,务必要解释清楚,那就是撼动老师们支持配合的第一个切入点

        至于第二个切入点,就是要简化老师们的管理障碍。我的做法是:告知老师们CM7创建文件夹,但文件夹设为全部老师可以浏览。而科目主任就是管理员。个别科目的文件夹,将与科目主任与老师们的个人得力马户口(g-开头的户口)共享。

        那,试问如何确认回馈呢?笔者个人的话,我是告诉老师们,即将采用CM7户口建设云端学科文件夹,需要的学科,可以点击询问回馈,以便整理和准备。

        老师们看见了清楚的信息,知道是共享学校的。有了回应后,PK1就能利用CM7的账户,创建12个学科的文件夹。

        创建12个科目的文件后,请将12个文件夹,归纳在1个云端的文件夹即可。这样可以确保文件夹内,利落。

        说了那么多,我来整理步骤,让我们第一副校长,大大赋能学校12个科目的Ketua Panitia,让他们也发挥。

步骤:

  1. 发放问卷,让12个科目的主任,有选择的原因。(主要是照顾12个科目主任的ICT技巧不一情况。)
  2. 解释使用CM7创建共享云端硬盘的原因。
  3. 告知所有学科档案将与校内老师们共享。(校内老师可以登入任何文件夹,查看或提取任何科目的档案和内容。)这是建设互相信任的基础工作之一。
  4. 使用CM7创建文件夹。
  5. 依据科目,与科目主任共享文件夹。可以选择电邮通知。
  6. 文件夹中,适当限制科目主任的权限。
  7. 将文件夹的链接,适当在学校网页、Site、部落格定位。这技术上是最重要的步骤。这个步骤,是要方便科目主任,透过最容易得方法更新档案内容。
  8. 另外,记得,将个别文件夹的链接,转换成为二维码。打印二维码,传送每一个学科科目主任。
  9. 科目主任可以从学校部落格、跳板和SITE开始更新文件夹内容。
结束。建设数码学科文件夹,迈出了第一步。

学校活动看板

续上篇《生日墙 Birthday Wall》后,在脑海中,有好些奇怪的想法:

  • 学生生日墙,能不能变成学校教职员的生日墙?
  • 生日墙,是依据日期,自动显示名单。那,能不能稍微修改编码,将学生名字,更换为学校的活动呢?
  • 同样的事情,能不能再变成学术、学生事务、课外活动的看板呢?
自动化的学校活动看板有什么好处?
  • 善用校历:校历都是依据日期编排活动。倘若已在日历有校历记录,能不能让学校活动看板,直接从校历日历中导入?
  • 善用学科活动年历:每一个学科,都会安排活动。但如果将这些活动,从校历中,直接拷贝粘贴的话,日期到了,直接衔接自动显示的话,会不会节省网页管理员的工作呢?
  • 同样的,课外活动的看板,学生事务的看板,能不能照样处理呢?这样一来,学生仅需点击不同的页面,即可看见当天要进行的活动了。
  • 在某种程度上,学校管理员,能不能将学校的活动,变成类似小挑战的游戏活动,引导学生尝试完成各种小挑战(当然是针对学习和品格方便的指引咯)。
  • 从网页管理员的角度来看,这样的转变,几乎可以简化每天处理网页内容的工作。一个版面,即可自动化显示全年的活动了。我相信是可以大大简化网页管理的工作。
  • 倘若在指定的地点,有荧幕的话,仅需显示各项活动看板即可了。
要使用的编码如下:
function updateSlidesWithSheetData() {
  // --- 1. 定义您的文件 ID 和数据范围 ---
  
  // Sheet 1: 学生生日信息
  const sheet1Id = '您的第一张Sheet文件ID'; 
  const range1 = 'Sheet1!A2:D15'; // 例如 '学生生日表!A2:D15'

  // Sheet 2: 学术信息
  const sheet2Id = '您的第二张Sheet文件ID';
  const range2 = 'Sheet1!A2:E20'; // 例如 '学术数据!A2:E20'

  // Sheet 3: 课外活动信息
  const sheet3Id = '您的第三张Sheet文件ID';
  const range3 = 'Sheet1!A2:C10'; // 例如 '活动记录!A2:C10'

  // --- 2. 获取数据 ---
  const data1 = Sheets.Spreadsheets.Values.get(sheet1Id, range1).values;
  const data2 = Sheets.Spreadsheets.Values.get(sheet2Id, range2).values;
  const data3 = Sheets.Spreadsheets.Values.get(sheet3Id, range3).values;

  // --- 3. 更新 Google Slides ---
  const presentation = SlidesApp.getActivePresentation();
  
  // 更新第一张幻灯片(索引从0开始)
  const slide1 = presentation.getSlides()[0]; 
  updateTableInSlide(slide1, data1);

  // 更新第二张幻灯片
  const slide2 = presentation.getSlides()[1];
  updateTableInSlide(slide2, data2);

  // 更新第三张幻灯片
  const slide3 = presentation.getSlides()[2];
  updateTableInSlide(slide3, data3);
}

// 辅助函数:查找并更新幻灯片中的第一个表格
function updateTableInSlide(slide, data) {
  const elements = slide.getPageElements();
  for (let i = 0; i < elements.length; i++) {
    if (elements[i].asPageElement().getPlaceholderType() === SlidesApp.PlaceholderType.TABLE || elements[i].asPageElement().asTable()) {
      // 假设我们只更新找到的第一个表格
      const table = elements[i].asPageElement().asTable();
      // 清除旧数据 (可能需要更复杂的逻辑来匹配行/列)
      // 简单起见,这里假设您有一个预先画好的空表格
      // 更简单的方法是删除旧表格,然后用新数据新建一个表格
      
      // *** 警告:下面的代码需要您手动实现删除旧表格并新建一个 ***
      // 这是一个更可靠的方法:
      elements[i].asPageElement().remove();
      slide.insertTable(data.length, data[0].length, 50, 50, 100, 100).setContents(data);
      return;
    }
  }
}

下一篇,我们讨论看看,如何从学校活动看板,变成每日晨读的工具。是的,这是可行的。

Wednesday, December 17, 2025

生日墙 Birthday Wall

 
生日墙,顾名思义,就是显示当天生日的寿星。主要目的是提醒和祝福身边,在当天庆祝生日的朋友/学生。

        在学校建立生日墙,是有正面的影响的。当然,也要有足够的能力处理才行。校园要有生日墙的话,必须尽可能简化生日墙的建设工作(别告诉我还要使用传统的布告板和粘贴学生名单)。

        传统的布告板和学生名单,不仅费时费力,还很挤压老师的作息时间。要知道,布置布告板,是多么费神费时的工作啊。但更重要的,其实就是即时性。

        建设电子或网络版的生日墙,在很大程度上,可以有效弥补老师的作息时间。但更重要的是:在布置上,美编上,排版上,多了很多自由和选择(网络的图像和设计,你曾计算吗?)。但比这个更重要的是:网络/电子版的生日墙,可依据当天的日期,即时显示生日的学生。

        嗯,你没有看错。是的。网络/电子版的生日墙,可以依据当天的日期,即时显示当天生日的全部学生

先讲解构思和步骤,方便大家有个基本概念:

  1. 一定要有个汇集、收集、记录全校学生名字、生日的档案。最好是Google Sheet档案。仅需1页即可。个人建议:将这档案与生日统计分析档案,衔接起来。完成生日统计和分析档案后,直接点击链接,并完成这个档案。
  2. 一定要有个作为生日墙(birthday wall)的画面,建议使用Google Slide即可。
  3. 学校设定要显示生日墙的页面(部落格、网页或 site都可以)。
  4. 在显示档案中,使用app script功能,指定时间从记录日期的档案,传送或汇集全校的生日名字过来显示画面中。
  5. 刊登publish 显示画面。
  6. 将画面定位在学校网页、部落格、SITE中备用。
如此一来,倘若没有任何学生进出的话,生日资料就不需要更新,设定时间后,直接在生日墙自动显示。
        下面,我们来看看实际操作:
  1. 创建一个Google Sheet 档案。档案仅需2列 (columns)即可。
  2. 第一列:学生姓名。
  3. 第二列:学生生日日期。格式设定为:年月日。
  4. 别关闭档案。因为等下需要拷贝档案的ID。档案的ID是从 d/之后,/edit之前的链接。
  5. 开启 Google Slide 
  6. 设计好要的美编或插图。
  7. 找出Google Slide的 ID编号。ID是从 d/之后,/edit之前的链接。
  8. 置入一个text box,右击text box,在标题tittle处命名 Birthdaybox
  9. 在google slide 中,点击extension > app script
  10. 然后,将下面的代号,置入画面内:
  11. function updateBirthdaySlide() {
      // ======================================================
      // CONFIGURATION SECTION - PASTE YOUR IDs HERE
      // ======================================================
      var slideId = 'Google Slide的 ID';
      var sheetId = 'Google Sheet 的 ID';
      var sheetName = 'Sheet1'; // Change if your tab has a different name
      // ======================================================

      // 1. Get the Data from the Sheet
      var ss = SpreadsheetApp.openById(sheetId);
      var sheet = ss.getSheetByName(sheetName);
      var data = sheet.getDataRange().getValues();
     
      // 2. Get Today's Date
      var today = new Date();
      var currentMonth = today.getMonth(); // Note: January is 0 in JavaScript
      var currentDay = today.getDate();
     
      var birthdayNames = [];
     
      // 3. Loop through the rows (Starting from row 1 to skip headers)
      for (var i = 1; i < data.length; i++) {
        var name = data[i][0];
        var birthday = new Date(data[i][1]);
       
        // Check if the date is valid, then match Month and Day
        if (birthday && birthday.getMonth() === currentMonth && birthday.getDate() === currentDay) {
          birthdayNames.push(name);
        }
      }
     
      // 4. Create the display message in bullet form
      var displayText = "";
      if (birthdayNames.length > 0) {
        // This creates a list where each name starts with a bullet point
        displayText = "🎉 某某某华小衷心祝福 Happy Birthday to:\n\n" + birthdayNames.map(function(name) {
          return "• " + name;
        }).join("\n") + "\n\n🎂 校方希望对学生说的祝福语";
      } else {
        displayText = "若当天没有学生生日的话,会出现的字眼";
      }
     
      // 5. Update the Google Slide
      var deck = SlidesApp.openById(slideId);
      var slides = deck.getSlides();
      var slide = slides[0]; // Gets the first slide
     
      var shapes = slide.getShapes();
     
      // Find the text box tagged as "BirthdayBox" and update it
      for (var j = 0; j < shapes.length; j++) {
        if (shapes[j].getTitle() === "BirthdayBox") {
           shapes[j].getText().setText(displayText);
        }
      }
    }
  12. 完成编码粘贴后。在app script页面左边的时钟,点选要执行的时间。
  13. 将Google Slide页面,刊登(publish):File > Share > Publish to Web
  14. 点选embed 嵌入选项。准备提取嵌入代码。
  15. 将代码置入学校的部落格、网页、Site中即可。
备注:
  • 建议在生日分析统计档案中,加上衔接这个生日日期的Sheet链接。之后,若没有学生进出的话,每年仅需更新一次即可。
  • 也在这个google sheet档案中,加上回去学校生日统计分析的链接。
感谢神,小小分享,圆了一个多年的梦想。希望对大家有帮助。下一篇,我们探讨,如何让生日墙,变成《学校活动看板》。

Tuesday, December 16, 2025

学生生日统计与分析

感恩PKHEM还是可以从IDME下载学生资料。在得到学生资料后,只需设定好一定的方程式,即可将学生的资料,进行一定的统计和分析了。

        统计和分析学生出生日期,究竟有什么作用呢?

  1. 设计在谷歌课室的祝福信息。
  2. 在日历中,设定生日提醒。
  3. 可以在学校日历中显示。
  4. 可以在学校网页中显示生日的学生。
实际的处理方法,是怎样的呢?
  1. PKHEM下载IDME的学生资料。
  2. 要拥有的资料:班级、姓名、性别、宗教信仰、生日日期。
  3. 设定方程式,依据学生的生日日期,自动提取月份。
  4. 然后,设定12个月份的统计表。
  5. 统计表分为:出生月份,男女人数,依据宗教信仰的比例。
有什么作用?
  1. 方便准备任何生日派对或礼物 (学校爱心计划、辅导组活动等)。
  2. 方便适当的祝福语。
  3. 方便在校园建立友爱的氛围。

        必须留意的是,在设计的过程中,必须要考量到IDME中全部的宗教信仰。为什么呢?因为只有这样,无论学校有任何学生或家长点选任何宗教信仰,PKHEM在下载后,直接粘贴处理时候,档案才会自动依据全部IDME的宗教信仰分析统计。不会有任何遗漏(除非系统有大改动)

        下一篇,我们讨论:《生日墙 Birthday Wall》--编制一个可以依据当天日期,自动显示当天生日的学生名单。(这是很多年前想像要拥有,但当时完全做不到的梦想之一)

Notebook LM的约会-建设 Book Review库

2026年即将开始,但得力马培训,想不到要做什么?来,给个建议大家:Notebook LM的约会:2026得力马培训:建立 book review库

SULDP:

  1. 找出并编排老师们需阅读的书本(链接或电子书)
  2. 与ict(现在已是由GPM负责)合作,以Google sheet准备book review 表格备用。Google sheet必须1个档案多个页面哦,不然无法实现协作的目标与体会。
  3. 设定共享权限,但不通知
  4. 设定电邮发送书本链接与表格链接。(预设电邮的发送必须是LDP当天)


 ADMIN DELIMA:

  1. 指导老师们从得力马网站登入
  2. 选择Notebook LM激活ai PLC 
  3. 老师们以Notebook LM处理阅读书本内容,但根据表格需要输出
  4. 老师们填写表格
  5. SU LDP检查,关闭共享。修改为人人都可浏览。


GPM

  1. 善用链接,植入学校网页,SITE,跳板中
  2. 截图并通过群组告知全校链接地点


好处:

  1. 保持老师们的得力马账号活跃,亲身体会Ai的效果。
  2. 激活每一个老师的PLC AI(登入后点击Notebook LM就是了,连续点击每一个AI都可以,这是2025年才有的东西)。
  3. 建立互相信任,完成协作 (kolaborasi)的工作氛围(让老师们慢慢习惯共享协同工作的趋势啦)。
  4. 逐步组织共享氛围。
  5. 建立归属感,一同收获的满足感。
  6. 建立每一个老师适用的Book Review内容。
  7. 方便每一个需要的老师,随时提取任何需要的BOOK REVIEW。
坏处:
劳师动众。哈哈哈

Wednesday, December 10, 2025

小小改变,大大影响的例子-学校教师出席记录谈起

续上次在2025年9月3日分享的《2026教职员出席记录-大幅度降低页面数量-浅谈工作设计流程改进带来的影响》,今天我们稍微探讨,究竟这小小改变,可以如何改变工作结果。
        在2026年教师记录之前,要记录的教师出席档案, 页面多,衔接方式也繁杂,遇见老师转校进出的话,尤其麻烦。但使用2026年的版本的话,事情就简单许多了。
        此外,最大的优点,篇幅的缩减,也直接让档案的数量减少了。此话怎么说呢?
        之前,1个档案仅能使用1年。因为1年就有13张页面了。现在,因为页面大幅度缩减到只有1页,1年1页的排版,让1个档案,可以包含多个年份在内。

举例:
  • 旧方法:1个档案1个学年。因为页面多达13页。每年需要创建新的档案。
  • 新方法:1个档案可有多个页面,因为1个页面就是1个学年。每年仅需创建新的页面。

2个方法,差异非常显著。所以,对于管理层来说,现有的管理方法不是不好,但切记:小小的改变,足以带来更大的影响。当然,别什么都吹毛求疵,那是本末倒置的做法。
        收着带不走,和大家分享。要是有兴趣的话,欢迎点击浏览使用(File > Make a copy即可拥有)2026年的教职员出席分析样本吧。

重点介绍

学生课堂评估/学习进度记录

学生课堂评估/学习进度表格 样本即日起将透过 学生课堂评估/学习进度记录专页 传递。 特此告知 。(日后所有更新将在专页处理)            俗称rekod perkembangan murid (以前称为rekod transit)的东西。信息工艺TMK的部分,在年级...