如果你得了武漢肺炎~
隨著武漢肺炎病毒不斷地變種,現今的 Omicron 傳染力極其強大。我已經接收到不少朋友、親戚、小孩同學、…等人確診的訊息。是時候,再為自己補上最後一道防線了: 心理建設。
隨著武漢肺炎病毒不斷地變種,現今的 Omicron 傳染力極其強大。我已經接收到不少朋友、親戚、小孩同學、…等人確診的訊息。是時候,再為自己補上最後一道防線了: 心理建設。
強國強制使用的「健康碼APP」,本質上,是一張*正常人*的電子通行證,其稽核個人的移動路徑、武漢肺炎篩檢報告、人際接觸情形、疫苗接種紀錄、…等,再經運算(或是隨便計算)顯示成「綠碼、黃碼、紅碼」,惟有綠碼可暢行無阻,其餘在「進入商家、機關、乘坐大眾運輸工具、辦理業務…」皆有所限制。
「健康碼APP」與過去土改、三反、五反、反右、大饑荒、文革、…時期,所用之「路條」是相同的工具: 讓特定的人(正常無特權之人)不得自由移動。「健康碼APP」是否能「防疫」? 沒有明確的數值可證明,但在「減少人際交流、縮短移動距離、剝奪人民自由權」上,效果十分顯著。
邊標記的過程中,再跟女兒確認一下,她是不是明確地知道什麼加上什麼後是得到什麼。因為我是個機車的人,並不能滿足得到正確的答案,推導過程也得是正確的。
而且在我用了近 40 年的數學後,經驗是: 規矩是算數的基本、算數是數學的基本,數學要好,規矩不能少。
這裡先補充一個概念: 用直式教學並不是「錯誤的」,直式在進位表示上,對學習者有利,易於教學 。只是在多數值的累計上,無法簡單地、整齊地呈現問題的核心。
在整理完紙張上半部的直式計算式後,我接著要向她說明使用橫式計算式來完成這個問題。
就像歷史一樣,看得短點的人,跟看得長點的人,所分析出的結論會不一樣。
不同時期認識我的人,對我也會有不同的看法。目前主要把人生花在軟體工作上,在這邊所接受到的回饋會比較多,等將來把時間多花在政治工作上,相信也會有不少人質疑我,年輕時不是個民進黨狂熱支持者,怎麼現在完全不一樣了!
回到標題的問題上,在大學時期以前就認識我的人,都會知道我讀的是土木工程學系,是一個誤把土木系當土地開發系的傻蛋,在百般懕惡力學下,大學時期的教科書讀的是二二六六。我無法求解靜不定結構、測量平差、滲透流量…,甚至在大學三修流力後,也還是到博士班時,才從碩班學弟口中聽到水錘現象。
因此當我開了軟體公司,聘請員工後,就常面臨老朋友們的一項質疑: 『唷喔! 你憑什麼能管理軟體工程師?』
這裡先簡單回答: 「我沒這能力。」但如果看倌有點時間的話,就請繼續看下去,了解一下 「一個沒能力管理軟體工程師的人,究竟是憑什麼?」
一個小小的格式錯誤,我查了一整天。前句當然是誇飾法,畢竟我一整天還是得吃飯、上廁所、站起來走來走去,最重要的是不能忘了呼吸。
(ap.example.com-env) ubuntu@ip-172-16-32-60:/var/www-aps/ap.example.com-36-81a1/trunk$ ./manage.py runserver 0.0.0.0:8000 --nothread
Traceback (most recent call last):
File "./manage.py", line 11, in <module>
execute_from_command_line(sys.argv)
File "/var/www/ap.example.com-env/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 353, in execute_from_command_line
utility.execute()
File "/var/www/ap.example.com-env/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 345, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/var/www/ap.example.com-env/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 195, in fetch_command
klass = load_command_class(app_name, subcommand)
File "/var/www/ap.example.com-env/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 39, in load_command_class
module = import_module('%s.management.commands.%s' % (app_name, name))
File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
__import__(name)
File "/var/www/ap.example.com-env/local/lib/python2.7/site-packages/django/core/management/commands/runserver.py", line 16, in <module>
from django.db.migrations.executor import MigrationExecutor
File "/var/www/ap.example.com-env/local/lib/python2.7/site-packages/django/db/migrations/executor.py", line 7, in <module>
from .loader import MigrationLoader
File "/var/www/ap.example.com-env/local/lib/python2.7/site-packages/django/db/migrations/loader.py", line 10, in <module>
from django.db.migrations.recorder import MigrationRecorder
File "/var/www/ap.example.com-env/local/lib/python2.7/site-packages/django/db/migrations/recorder.py", line 12, in <module>
class MigrationRecorder(object):
File "/var/www/ap.example.com-env/local/lib/python2.7/site-packages/django/db/migrations/recorder.py", line 26, in MigrationRecorder
class Migration(models.Model):
File "/var/www/ap.example.com-env/local/lib/python2.7/site-packages/django/db/migrations/recorder.py", line 27, in Migration
app = models.CharField(max_length=255)
File "/var/www/ap.example.com-env/local/lib/python2.7/site-packages/django/db/models/fields/__init__.py", line 1072, in __init__
super(CharField, self).__init__(*args, **kwargs)
File "/var/www/ap.example.com-env/local/lib/python2.7/site-packages/django/db/models/fields/__init__.py", line 166, in __init__
self.db_tablespace = db_tablespace or settings.DEFAULT_INDEX_TABLESPACE
File "/var/www/ap.example.com-env/local/lib/python2.7/site-packages/django/conf/__init__.py", line 55, in __getattr__
self._setup(name)
File "/var/www/ap.example.com-env/local/lib/python2.7/site-packages/django/conf/__init__.py", line 43, in _setup
self._wrapped = Settings(settings_module)
File "/var/www/ap.example.com-env/local/lib/python2.7/site-packages/django/conf/__init__.py", line 116, in __init__
setattr(self, setting, setting_value)
File "/var/www/ap.example.com-env/local/lib/python2.7/site-packages/django/conf/__init__.py", line 85, in __setattr__
raise ImproperlyConfigured("If set, %s must end with a slash" % name)
django.core.exceptions.ImproperlyConfigured: If set, STATIC_URL must end with a slash
多年前,寫了一個內部用的除錯系統,因為有可能登入模組本身就是有 bug 的,為了降低系統的複雜性,所以不以 django auth 架構作身份驗證,單純檢查 remote_ip 有沒有在 settings.INTERNAL_IPS 裡來達到安全性檢查:
# ho600_lib/views.py
from django.conf import settings
def check_internal_ips(function):
def _inner_function(*args, **kw):
request = args[0]
if (hasattr(settings, 'INTERNAL_IPS')
and request.META.get('REMOTE_ADDR')
in settings.INTERNAL_IPS):
return function(*args, **kw)
else:
return HttpResponseForbidden(
'You have no right!!!')
return _inner_function
@check_internal_ips
def list_bugrecords(R):
""" list the latest 10 records
about automated bug tracker
"""
pass
# settings.py
INTERNAL_IPS = ['127.0.0.1', '192.168.1.1',
'192.168.1.2', '192.168.1.254']
但這有一個問題,每次家裡 IP 有變動,或是在別的地方處理 bug 時,就得先登入機器內部修改 settings.py 才能從網頁上閱讀 bug 紀錄。實在不方便,大概拖了近 10 年之久了,今天終於改良了這個功能。
再次廣告: 敝司徵才網站 ,主要語言: Python(Django) / Javascript ,主要平台: Ubuntu Linux on AWS ,年薪是 60 萬以上,敬請瀏覽指教。
搭配徵才網站的筆試系統,其述求重點在於 完全匿名 下,允許應聘者與考試委員準確交流。
就目前的信箱服務來說,如果在註冊新帳號時,完全給 假的資訊 ,不也是很容易就可以拿到一組信箱來作為 匿名考試 的工具嗎? 然則就算全部用假資訊來註冊,現今的信箱服務也往往會要求作手機號碼的驗證,無法完全匿名,於此,若是在筆試網站上是要求應聘者須提供個人信箱,來作為試題往返的管道,不免還是會洩露部份個人資訊,假使我能駭進他的信箱伺服器的話。另外給假資訊的方法,難免有違反信箱系統的會員使用條款,敝司不過是要徵個才,何必讓人落得作了個欺騙的動作呢?
況且,將匿名責任交由應聘者自行處理,成果也會參差不齊,如果有人就是大刺刺地用了 i_am_linus@gmail.com 的信箱來應聘,我是該信還是不信呢? 畢竟他透露出獨特資訊,這對我還是會造成錨定效應。
話說重頭,敝司徵才為什麼要搞得這麼複雜???