Pelatihan IT berbasis pondok
- Coding & Ngaji
70+ Total Peserta
40+ Jumlah Alumni
25 Santri Aktif
19 Santri Mandiri
- https://qodr.or.id
// 1. jalankan docker daemon lalu build docker
docker build -t integrasi-woowa:v1.1.0 .
docker run -p 8000:8000 --env-file env/.env.prod integrasi-woowa:v1.1.0
// 2. image nya di tag
docker tag integrasi-woowa:v1.1.0 harbor.woo-wa.com/production/integrasi-woowa:v1.1.0
// 3. login harbor
docker login harbor.woo-wa.com
// 4. push image ke harbor
docker push harbor.woo-wa.com/production/integrasi-woowa:v1.1.0
// 5. edit file chart/manifests/apps1/production/integrasi-woowa/values.yaml
repository: harbor.woo-wa.com/production/integrasi-woowa:v1.1.0
// 6. edit file chart/manifests/apps1/production/integrasi-woowa/templates/configmap.yaml
sesuaikan env nya
// 7. apply ke k8s
helm upgrade integrasi-woowa .
// 8. monitoring GUI pod
buka LENS desktop
public function matches($password, $filePasswd){
if (strpos($filePasswd, '$apr1') === 0){
// MD5
$passParts = explode('$', $filePasswd);
$salt = $passParts[2];
$hashed = $this->crypt_apr1_md5($password, $salt);
return $hashed == $filePasswd;
}elseif (strpos($filePasswd, '{SHA}') === 0){
// SHA1
$hashed = "{SHA}" . base64_encode(sha1($password, TRUE));
return $hashed == $filePasswd;
}elseif (strpos($filePasswd, '$2y$') === 0){
// Bcrypt
return password_verify ($password, $filePasswd);
}else{
// Crypt
$salt = substr($filePasswd, 0, 2);
$hashed = crypt($password, $salt);
return $hashed == $filePasswd;
}
return false;
}
// APR1-MD5 encryption method (windows compatible)
function crypt_apr1_md5($plainpasswd, $salt){
$tmp = "";
$len = strlen($plainpasswd);
$text = $plainpasswd.'$apr1$'.$salt;
$bin = pack("H32", md5($plainpasswd.$salt.$plainpasswd));
for($i = $len; $i > 0; $i -= 16) { $text .= substr($bin, 0, min(16, $i)); }
for($i = $len; $i > 0; $i >>= 1) { $text .= ($i & 1) ? chr(0) : $plainpasswd[0]; }
$bin = pack("H32", md5($text));
for($i = 0; $i < 1000; $i++)
{
$new = ($i & 1) ? $plainpasswd : $bin;
if ($i % 3) $new .= $salt;
if ($i % 7) $new .= $plainpasswd;
$new .= ($i & 1) ? $bin : $plainpasswd;
$bin = pack("H32", md5($new));
}
for ($i = 0; $i < 5; $i++)
{
$k = $i + 6;
$j = $i + 12;
if ($j == 16) $j = 5;
$tmp = $bin[$i].$bin[$k].$bin[$j].$tmp;
}
$tmp = chr(0).chr(0).$bin[11].$tmp;
$tmp = strtr(strrev(substr(base64_encode($tmp), 2)),
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",
"./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz");
return "$"."apr1"."$".$salt."$".$tmp;
}
for (let index = 0; index < arr.length; index++) {
var str=arr[index].replace(/\_/g," ").trim()
str=str.replace(/(^|\s)\S/g, function(t) { return t.toUpperCase() });
str=str.replace(/\ /g,"").trim()
console.log(str);
}
no_hp = no_hp.replace(/[^0-9]/g,"");
https://pkg.go.dev/net/url#URL
$2y$10$s0k6l5PnayLHxlUt6.EbnOuihRcAkheH9IdHR0UyWu2DlRNQROlKe
import (
"fmt"
"github.com/jasonlvhit/gocron"
)
func task() {
fmt.Println("Task is being performed.")
}
func main() {
s := gocron.NewScheduler()
s.Every(2).Hours().Do(task)
<- s.Start()
}
ticker := time.NewTicker(5 * time.Second)
quit := make(chan struct{})
go func() {
for {
select {
case <- ticker.C:
// do stuff
case <- quit:
ticker.Stop()
return
}
}
}()
const url = 'https://usman.rubiantoro.com/get_customer/crm/1/1500';
var formdata = new FormData();
formdata.append("api_key", "_:2.__-._2_2._4:1._:2.__-.__2._:1._:8._3:3._2_7");
let request = new Request(url, {
method: 'POST',
mode: 'cors',
cache: "no-cache",
body: formdata,
});
fetch(request)
.then(response=>response.json())
.then(data=>{ console.log(data); });
package main
import (
"fmt"
"time"
)
func main() {
currentTime := time.Now()
yesterday :=currentTime.AddDate(0, 0, -1)
fmt.Println("Yesterday ",yesterday.Format("2006-01-02")
fmt.Println("Current Time in String: ", currentTime.String())
fmt.Println("MM-DD-YYYY : ", currentTime.Format("01-02-2006"))
fmt.Println("YYYY-MM-DD : ", currentTime.Format("2006-01-02"))
fmt.Println("YYYY.MM.DD : ", currentTime.Format("2006.01.02 15:04:05"))
fmt.Println("YYYY#MM#DD {Special Character} : ", currentTime.Format("2006#01#02"))
fmt.Println("YYYY-MM-DD hh:mm:ss : ", currentTime.Format("2006-01-02 15:04:05"))
fmt.Println("Time with MicroSeconds: ", currentTime.Format("2006-01-02 15:04:05.000000"))
fmt.Println("Time with NanoSeconds: ", currentTime.Format("2006-01-02 15:04:05.000000000"))
fmt.Println("ShortNum Month : ", currentTime.Format("2006-1-02"))
fmt.Println("LongMonth : ", currentTime.Format("2006-January-02"))
fmt.Println("ShortMonth : ", currentTime.Format("2006-Jan-02"))
fmt.Println("ShortYear : ", currentTime.Format("06-Jan-02"))
fmt.Println("LongWeekDay : ", currentTime.Format("2006-01-02 15:04:05 Monday"))
fmt.Println("ShortWeek Day : ", currentTime.Format("2006-01-02 Mon"))
fmt.Println("ShortDay : ", currentTime.Format("Mon 2006-01-2"))
fmt.Println("Short Hour Minute Second: ", currentTime.Format("2006-01-02 3:4:5"))
fmt.Println("Short Hour Minute Second: ", currentTime.Format("2006-01-02 3:4:5 PM"))
fmt.Println("Short Hour Minute Second: ", currentTime.Format("2006-01-02 3:4:5 pm"))
}
func GetUserIP(c echo.Context) string {
var userIP string
if len(c.Request().Header.Get("CF-Connecting-IP")) > 1 {
userIP = c.Request().Header.Get("CF-Connecting-IP")
return userIP
} else if len(c.Request().Header.Get("X-Forwarded-For")) > 1 {
userIP = c.Request().Header.Get("X-Forwarded-For")
return userIP
} else if len(c.Request().Header.Get("X-Real-IP")) > 1 {
userIP = c.Request().Header.Get("X-Real-IP")
return userIP
} else {
userIP = c.Request().RemoteAddr
// if strings.Contains(userIP, ":") {
// return strings.Split(userIP, ":")[0]
// } else {
return userIP
// }
}
}
import (
"string"
"fmt"
)
func main(){
keyword := "ini ibu budi"
fmt.Println(str[2:len(str)]) // i ibu budi
}
import "github.com/labstack/echo/v4"
func Index(c echo.Context) error {
key := c.FormValue("api_key") //form value
start := c.Param("start") //url /api/get-data/:start
name := c.QueryParam("name") // ?name=usman
req,_ := c.FormParams() // semua form value
}
import "github.com/labstack/echo/v4"
type ResponseApi struct {
Success bool
Status string
Message string
Data interface{}
}
func Index(c echo.Context) error {
var res ResponseApi
res.Success = true
res.Status = "saved"
res.Message = "Log saved"
res.Data = "data"
return c.JSON(http.StatusOK,res)
}
StatusContinue = 100 // RFC 9110, 15.2.1
StatusSwitchingProtocols = 101 // RFC 9110, 15.2.2
StatusProcessing = 102 // RFC 2518, 10.1
StatusEarlyHints = 103 // RFC 8297
StatusOK = 200 // RFC 9110, 15.3.1
StatusCreated = 201 // RFC 9110, 15.3.2
StatusAccepted = 202 // RFC 9110, 15.3.3
StatusNonAuthoritativeInfo = 203 // RFC 9110, 15.3.4
StatusNoContent = 204 // RFC 9110, 15.3.5
StatusResetContent = 205 // RFC 9110, 15.3.6
StatusPartialContent = 206 // RFC 9110, 15.3.7
StatusMultiStatus = 207 // RFC 4918, 11.1
StatusAlreadyReported = 208 // RFC 5842, 7.1
StatusIMUsed = 226 // RFC 3229, 10.4.1
StatusMultipleChoices = 300 // RFC 9110, 15.4.1
StatusMovedPermanently = 301 // RFC 9110, 15.4.2
StatusFound = 302 // RFC 9110, 15.4.3
StatusSeeOther = 303 // RFC 9110, 15.4.4
StatusNotModified = 304 // RFC 9110, 15.4.5
StatusUseProxy = 305 // RFC 9110, 15.4.6
_ = 306 // RFC 9110, 15.4.7 (Unused)
StatusTemporaryRedirect = 307 // RFC 9110, 15.4.8
StatusPermanentRedirect = 308 // RFC 9110, 15.4.9
StatusBadRequest = 400 // RFC 9110, 15.5.1
StatusUnauthorized = 401 // RFC 9110, 15.5.2
StatusPaymentRequired = 402 // RFC 9110, 15.5.3
StatusForbidden = 403 // RFC 9110, 15.5.4
StatusNotFound = 404 // RFC 9110, 15.5.5
StatusMethodNotAllowed = 405 // RFC 9110, 15.5.6
StatusNotAcceptable = 406 // RFC 9110, 15.5.7
StatusProxyAuthRequired = 407 // RFC 9110, 15.5.8
StatusRequestTimeout = 408 // RFC 9110, 15.5.9
StatusConflict = 409 // RFC 9110, 15.5.10
StatusGone = 410 // RFC 9110, 15.5.11
StatusLengthRequired = 411 // RFC 9110, 15.5.12
StatusPreconditionFailed = 412 // RFC 9110, 15.5.13
StatusRequestEntityTooLarge = 413 // RFC 9110, 15.5.14
StatusRequestURITooLong = 414 // RFC 9110, 15.5.15
StatusUnsupportedMediaType = 415 // RFC 9110, 15.5.16
StatusRequestedRangeNotSatisfiable = 416 // RFC 9110, 15.5.17
StatusExpectationFailed = 417 // RFC 9110, 15.5.18
StatusTeapot = 418 // RFC 9110, 15.5.19 (Unused)
StatusMisdirectedRequest = 421 // RFC 9110, 15.5.20
StatusUnprocessableEntity = 422 // RFC 9110, 15.5.21
StatusLocked = 423 // RFC 4918, 11.3
StatusFailedDependency = 424 // RFC 4918, 11.4
StatusTooEarly = 425 // RFC 8470, 5.2.
StatusUpgradeRequired = 426 // RFC 9110, 15.5.22
StatusPreconditionRequired = 428 // RFC 6585, 3
StatusTooManyRequests = 429 // RFC 6585, 4
StatusRequestHeaderFieldsTooLarge = 431 // RFC 6585, 5
StatusUnavailableForLegalReasons = 451 // RFC 7725, 3
StatusInternalServerError = 500 // RFC 9110, 15.6.1
StatusNotImplemented = 501 // RFC 9110, 15.6.2
StatusBadGateway = 502 // RFC 9110, 15.6.3
StatusServiceUnavailable = 503 // RFC 9110, 15.6.4
StatusGatewayTimeout = 504 // RFC 9110, 15.6.5
StatusHTTPVersionNotSupported = 505 // RFC 9110, 15.6.6
StatusVariantAlsoNegotiates = 506 // RFC 2295, 8.1
StatusInsufficientStorage = 507 // RFC 4918, 11.5
StatusLoopDetected = 508 // RFC 5842, 7.2
StatusNotExtended = 510 // RFC 2774, 7
StatusNetworkAuthenticationRequired = 511 // RFC 6585, 6
import (
"encoding/json"
"fmt"
)
func main(){
json_str:=`[{"key1":"val1","key2":"val2","key3":"val3"}]`
if !json.Valid([]byte(json_str)) {
fmt.Printf("%q is NOT valid\n", json_str)
}
}
import (
"fmt"
"net/url"
)
func main(){
endpoint := "https://usman.rubiantoro.com/"
u, _ := url.ParseRequestURI(endpoint)
if u == nil {
fmt.Printf("%q is NOT valid\n", endpoint)
}
}
import (
"fmt"
"regexp"
)
func main(){
isAllowString := regexp.MustCompile(`^[A-Za-z0-9\-. ><\(\)_,\/]+$`).MatchString
for _, var_cek := range []string{"hallo","jum'at","ini/itu","ngapain","indonesia","qodr","qodrbee"} {
if !isAllowString(var_cek) {
fmt.Printf("%q is NOT valid\n", var_cek)
}else{
fmt.Printf("%q is valid\n", var_cek)
}
}
}
ALLOW_PLATFORM:=`["utas","mayar"]`
cek:=InJSON("mayar",ALLOW_PLATFORM)
fmt.Println("cek : ",cek)
func InJSON(keyword,json_str string) bool {
var arr []string
_ = json.Unmarshal([]byte(json_str), &arr)
cek := false
for i := 0; i < len(arr); i++ {
if arr[i]==keyword {
cek = true
break
}
}
return cek
}
arr2:=[]string{"oke","tuntas","hajar"}
cek:=InArray("oke2",arr2)
fmt.Println("cek : ",cek)
func InArray(keyword string,arr []string) bool {
cek := false
for i := 0; i < len(arr); i++ {
if arr[i]==keyword {
cek = true
break
}
}
return cek
}
import "github.com/floscodes/golang-thousands"
import "strconv"
n := strconv.Itoa(23489)
s := thousands.Separate(n, "en") // en/de
result.ForEach(func(key, value gjson.Result) bool {
println("loop ",value.String())
return true // keep iterating
})
for _, var_cek := range []string{"response","ket"} {
println("loop ",var_cek)
}
package main
import (
"fmt"
"strings"
)
func main() {
str := "Good Morning! Good Day!"
substr := "Good"
count := strings.Count(str, substr)
fmt.Println("The number of occurrences of substring in the string is: ", count)
}
package main
import (
"fmt"
"strings"
"io/ioutil"
)
func main(){
WriteFileListen("ini konten")
}
func WriteFileListen(str string){
contents,_ := ioutil.ReadFile("listen.txt")
contents2 := (string(contents)+str)
ioutil.WriteFile("listen.txt", []byte(contents2), 0644)
fmt.Println("WriteFileListen : ",str)
}
package listen
import (
"fmt"
"log"
"strings"
"io/ioutil"
"net/http"
)
func SendWA(key,to,message string) (string) {
var err error
var client = &http.Client{}
var data string
reader := strings.NewReader(`{"phone_no":"`+to+`","key":"`+key+`","message":"`+message+`"}`)
request, err := http.NewRequest("POST", "http://116.203.191.58/api/send_message", reader)
if err != nil {
return data
}
request.Header.Set("Content-Type", "application/json")
response, err := client.Do(request)
body, readErr := ioutil.ReadAll(response.Body)
if readErr != nil {
log.Fatal(readErr)
}
var body_string string
if response.StatusCode == 403 {
body_string = "403"
}else{
body_string = string(body)
}
if err != nil {
return data
}
defer response.Body.Close()
return body_string
}
package def
const DB_USER = "ABC";
const DB_PASS = "vnpierj[pek";
const DB_HOST = "10.50.196.30";
const DB_NAME = "app_dbname";
package fn
import (
def "go.utas/config"
"database/sql"
_ "github.com/go-sql-driver/mysql"
)
func ConnectDB() (*sql.DB, error) {
db, err := sql.Open("mysql", def.DB_USER+":"+def.DB_PASS+"@tcp("+def.DB_HOST+":3306)/"+def.DB_NAME)
if err != nil {
return nil, err
}
return db, nil
}
package main
import (
"go.utas/module/fn"
"github.com/blockloop/scan/v2"
"fmt"
)
func main(){
var plms []struct {
Kunci string `db:"kunci"`
License string `db:"license"`
Email struct {
Name string `db:"email"`
}
}
db,_ := fn.ConnectDB()
defer db.Close()
rows, _ := db.Query(`SELECT email, kunci, license FROM wp_premium_blabla LIMIT 3`)
defer rows.Close()
scan.Rows(&plms, rows)
fmt.Println("License : ",plms[1].License)
}
500 Internal Server Error
Request exceeded the limit of 10 internal redirects due to probable configuration error.
Use 'LimitInternalRecursion' to increase the limit if necessary.
Use 'LogLevel debug' to get a backtrace.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /projectname
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>
pilih mana...
lelah karena kerja
atau
lelah mencari kerja
??
maka bersyukurlah
pilih
mana..
lelah karena kerja
atau
lelah mencari kerja
??
maka bersyukurlah
the best you ever made is you - bagusin dirimu untuk kamu tuliskan
di cv itu. buat cv mu saat ini dan 3 tahun mendatang.
narasi - cerita singkat ttg diri, karakter, asal kota, pendidikan
terakhir, ipk, thn lahir, umur dll. singkat padat jelas
fokus - tonjolkan pada yg baik2
pengalaman kerja dan portfolio yg tidak relevan dengan posisi yg
di tuju maka di hapus aja, tulis yg relevan saja
cv ats - bikin cv ats tapi desain bagus
cv ats - posisi bisnis, submit platform, screening applicant
tracking system
cv kreatif - posisi desainer dll, submit ke email/personal,
dibaca oleh recruiter
max 2 halaman
kontak
======
no wa & linkedin wajib
sosmed lain dihapus aja - hati2 ber sosmed
jgn pake email alay
alamat lengkap g usah, kota domisili aja
gunakan istilah yg keren misal tukang bantu fotokopi dosen jadi
administrative assistant
pisahkan skill, achievement dan portfolio
skill d ukur dengan achievement
skill di buktikan dengan portfolio
pengalaman kerja
===============
- jgn terkesan kutu loncat, hati2 dengan banyak penglaman kerja tapi
cuma sebentar.
- tulis pencapaian ketika kerja. solve problem apa, bisa menaikan apa
dari berapa jadi berapa
- pengalaman yg tidak relate dengan posisi tujuan di hapus aja
kita itu di dunia membangun cerita
cerita nyata yg suatu saat akan dibuka
dibaca dan tidak hanya d baca
tapi d nilai dan diadili oleh sang Pencipta
maka goreskanlah cerita yg baik
di setiap momennya
Tiada yang pernah kusesali selain
keadaan ketika matahari tenggelam,
ajalku berkurang (usia bertambah),
namun amalanku tidak bertambah.โ
dari jumat ke jumat suda
terasa sangat cepat.Tiada yang pernah kusesali selain
keadaan ketika matahari tenggelam,
ajalku berkurang (usia bertambah),
namun amalanku tidak bertambah.โ
dari jumat ke jumat sudah
terasa sangat cepat.Tiada yang pernah kusesali selain
keadaan ketika matahari tenggelam,
ajalku berkurang (usia bertambah),
namun amalanku tidak bertambah.โ
dari jumat ke jumat sudah
terasa sangat cepatTiada yang pernah kusesali selain
keadaan ketika matahari tenggelam,
ajalku berkurang (usia bertambah),
namun amalanku tidak bertambah.โ
dari jumat ke jumat
Tiada yang pernah kusesali selain
keadaan ketika matahari tenggelam,
ajalku berkurang (usia bertambah),
namun amalanku tidak bertambah.โ
dari jumat ke jumatApa yg tidak di ukur tidak akan dikerjakan.
Lanjut sini gan..
Oh,alangkah baiknya aku mati sebelum
ini, dan aku menjadi sesuatu yang tak
berarti dan dilupakan.
Setegar2nya Maryam, setinggi2nya iman Maryam,
gadis itu tetap hancur hatinya mendengar omongan orang.issue team
==========
1.baru join, seminggu resign
2.leader baru, tim pelan2 resign
3.tiba2 tim terbaik resign
faktor resign
=============
- leader (menyenangkan/menegangkan/)
- ritme
- gaji
- budaya kerja
- benefit
- tidak ada tantangan/karir
- pekerjaan yg tidak di harapkan
exit interview => evaluasi perusahaan
apa feedback untuk perusahaan?
kenapa pilih perusahaan lain daripada disini
quesioner
=========
1. fasilitas
2. gaji
3. load kerjaan
4. leader nya
3. budaya kerja
supaya betah & berkinerja
=========================
1. set/bangun budaya positif
- culture pembelajar
- dll
2. peran leader (bisa mempengaruhi)
- tentukan goal
- planning
- organizing
- leading
- controlling
3. pekerjaan yg menantang/monoton
4. kompensasi yg jelas
5. bangun employer branding
__POSITIF_______________|__NEGATIF_____________
| | |
| - kerja keras | - malas |
| - kerja cerdas | - caper |
| - kerja tuntas | - drama |
| - kerja ikhlas | - playing victim |
| - rajin/tekun/ulet | - pesimis |
kinerja | - tidak mudah menyerah | - bossy |
| - kreatif | - mengeluh |
| - optimis | - mudah menyerah |
| - bisa diandalkan | |
| - disiplin | |
| - bertanggung jawab | |
________|________________________|______________________|
| | |
| - penyayang | - sombong |
| - iman & taqwa | - labil |
| - bersyukur & bersabar | - minder |
| - jujur | - pendendam |
| - sopan | - egois |
| - rendah hati | - pembohong |
moral | - ceria | - pembangkang |
| - dermawan | - pelit |
| - pemaaf | - durhaka |
| - murah hati | - khianat |
| - ikhlas | - ingkar janji |
| - amanah | - iri |
| - menepati janji | - dengki |
| - membantu kebaikan | |
|________________________|______________________|
Complexity
High | Low
_______________|_______________
| | |
| | |
High | Gmeet | TG |
| | |
| | |
Urgensi ______|_______________|_______________|
| | |
| | |
| | |
Low | Gmeet | TG |
| | |
| | |
|_______________|_______________|
4. Sejajarkan tanggung jawab dengan otoritas. jika seorang karyawan bertanggung jawab atas suatu hasil, mereka harus memiliki wewenang untuk membuat keputusan yang diperlukan.
Cepat | Lambat
___________|_____________
| | |
Besar| 1 | 3 |
| | |
_____|___________|_____________|
| | |
| | |
Kecil| 2 | 4 |
| | |
|___________|_____________|
eksekusi suatu tindakan ide dengan urutan
berdasarkan analisis impact nya
10 Kemampuan yang wajib kita kembangkan di masa muda.
1. Kemampuan untuk memahami diri sendiri sepenuhnya
Apa yang bisa kita lakukan. Apa yang tidak bisa.
Apa kelebihan kita. Apa kekurangan kita.
Bakat minat kita apa. Apa yg membuat kita marah dan kesal.
bagaimana cara kita berdamai dg kekecewaan.
Apa yang membuat kita bahagia dan senang.
Apa definisi kesuksesan buat kita? Dan seterusnya.
2. Kemampuan ber-jejaring (networking)
Di negara yg menjunjung tinggi nilai dari โorang dalamโ
kemampuan berjejaring jadi amat sgt penting.
3. Kemampuan berkomunikasi
Belajarlah bagaimana caranya menyampaikan sesuatu sesuai
dengan proporsinya, dalam hal apapun. Minimnya komunikasi
akan menimbulkan curiga. Curiga akan menjadikan prasangka.
Dan prasangka akan membuatnya menjadi fitnah.
4. Kemampuan untuk membaca situasi
Kapan harus diam, kapan harus berbicara. Kapan harus agresif,
kapan harus menahan diri. Kapan harus Berangkaaaattt.
5. Kemampuan untuk membaca karakter orang lain
Jadi kita bisa menentukan strategi pendekatan apa yang pas untuk
masing2 karakter.
6. Kemampuan untuk menghargai orang lain
Ini kemampuan yang pengembangannya sebenarnya sepaket dengan
kemampuan untuk memahami diri sendiri. Semakin tinggi pehamanan
kita terhadap diri kita, semakin kita menghargai perbedaan,
emosi dan nilai yang dipegang oleh orang lain.
Karena bagaimana pun orang lain tidak akan sama dengan kita.
3 unsur pembentuk nya pun beda.
3E : Environtment, Education, Experience.
7. Kemampuan untuk menikmati waktu dan hidup kita.
Nikmati waktu dan hidup kita. Sekali-kali Berjalan-jalanlah,
berliburlah, berkumpul dengan teman, main DOTA2,
makanlah makanan enak yang kita inginkan, bacalah buku2 yang kita sukai.
Jika kita tipe orang yang merasa bersalah jika berleha - leha
dan membuang waktu, lalu berkerja keraslah dan ciptakan milestone
atau minigoals yang setiap mencapaiannya membuat kita merasa hal
tersebut pantas untuk di rayakan, self Reward.
8. Kemampuan untuk mengakui kesalahan kita
Berdamailah dengan diri kita. Dulu kita pernah Bodoh sehingga
gampang ditipu orang, percaya pada orang yg salah,
pernah mengambil keputusan besar yang berakibat buruk untuk kita.
Maafkan lah kita yg dulu.
9. Kemampuan untuk menerima pujian
Entah kenapa banyak orang yang masih gagap dalam pujian.
Klo dipuji wuih keren banget bro, jago bgt bro, lo mah emang mastah dah.
Langsung auto jawab: "ah apalah gw, cuma remah rengginang" Wkwk.
10. Kemampuan untuk melepaskan hal - hal yang memang bukan untuk kita.
Let it go.. Let it gooo.. Dalam hal apapun : bisnis, uang, harta.
hubungan asmara, pertemanan, impian semasa muda, cita - cita lama,
balas dendam, kena scam, ditipu orang, atau hal atau barang
apapun yang seharusnya menjadi milik kita.
Klo kata denny caknan:
Ojo Nangis, sing uwis yo uwis, sing ilang ben ilang.
With Love
-Papagon-
Santo Dominggo adalah perantara umat Nasrani
menyembah tuhannya. Jika ingin ditebus dosanya, mereka
datang kepada bapa, atau disebut Santo Dominggo.
Muslim harus mengatakan AHAD, bukan Minggu.S : Specific, jelas waktunya, jumlahnya, dll
M : Measurable, dapat di ukur dlm unit satuan pengukuran
A : Agree, persetujuan dalam tim
R : Realistic, masuk akal, mindset di samakan dlm tim
T : Trackable, tarcatat dan dapat di tracking
Dasar membuat/menentukan Goal1. Ilmu-ilmu yang disebarkan.
2. Doa anak muslim.
3. Menanam pohon.
4. Sedekah jariyah.
5. Mewariskan mushaf.
6. Mengawal tapal batas pertahanan (jihad).
7. Menggali sumur atau membuat irigasi.
8. Membangun rumah inap untuk perantau.
9. Membangun masjid.
10. Mengajarkan (mendidik) Al Quranul Karim.
Jangan berharap hasil yang berdeba
dengan cara yang sama
Word class UMKM
Yang harus di kejar dan di jaga
1. Menekan Biaya
2. Meningkatkan Mutu
3. Delivery tepat Waktu
Untuk mengejar bisa 3 poin tersebut
maka perlu pondasi
1. Standarisasi
2. System
3. People
By Coach Armala
ketika macet apa yg anda lakukan?
fokus yg bisa dikelola/dikontrol/dikendalikan
- pilih tindakan yg positif
- misalnya berdzikir
- mambuat hati tenang dan menang
- salah 1 cara menjaga mood
jgn fokus pada yg tak bisa dikelola/dikontrol
- biasanya tindakan negatif
- misuh2 misal "jancook, lampu merah nya error"
lampu merah di luar kendalikan kita
- membuat hati kesal
tips
- tanyakan pada diri sendiri
hal terbaik apa (yg positif) yg harus saya lakukan pada situasi ini?
sudahkan kita bersyukur hari ini?
hidup yang kau keluhkan kadang adalah
hidup yang orang lain inginkan.
mari kita bersyukur dan berhenti
mengukur sejenak.
bersyukur atas yang sedikit,
niscaya Allah tambahkan yang banyak.
bukanlah kebahagiaan yang menjadikan
kita bersyukur, tapi bersyukurlah
yang membuat kita bahagia.
jiwa yang tamak akan mengeluh
di atas kemewahan,
jiwa yang bersyukur akan senantiasa
nikmat di atas kesempitan sekalipun.
Flywheel marketing
- customer experience
- basic develop product
- 1+1=2 janji wajib d tepati
- 1+1=3 surprise
- masalah -> solusi -> surprise
- product improve
- service improve
- money saver
- time saver
- memberi hadiah
- sedekah utama ke pelanggan dan tim
- 1+1=4 consultant
- digawangi sampe cita2 terwujud dengan product kita
- 1+1=5 unlimited
- berikan value2 tambahan dan produk lain yg related yg mendukung pelanggan
poin2
======
CRM > banyak dari CS sales
CS dan CRM bonus 2% dari omset
pelanggan beli karena percaya
buat pelanggan percaya/yakin
buat pelanggan yg merasa butuh
urutan japri customer
=====================
- impresi pertama
- small talk (basa basi)
- value dulu
- baru closing
tugas teknis CRM
================
- 1 CRM handle 250 pelanggan
- update kelola grup tiap hari
- update artikel
- webinar
- kolaborasi ke kolam org lain
- mentoring Q/A
- follow up minimal 10 customer per hari
- H1 : Follow Up Resi
- H3 : Menanyakan Produk Sudah Sampai / Belum?
- H4 : Menanyakan apakah ada yang kurang pas / cacat?
- H14 : Menanyakan bagaimana perasaan?
- H30 : Up Seling
cari SDM
========
- dari orang yg butuh kerjaan
- bukan yg iseng2 daftar
- tipikal CS sales -> money oriented, expresive
- tipikal CRM -> anteng, terstruktur, merawat, membangun hubungan
- jika tanya gaji, kurang bagus (kena SP)
$stop_date = '2009-09-30 20:24:00';
echo 'date before day adding: ' . $stop_date;
$stop_date = date('Y-m-d H:i:s', strtotime($stop_date . ' +1 day'));
echo 'date after adding 1 day: ' . $stop_date;
function date_sort($a, $b)
{
$t1 = strtotime($a['datetime']);
$t2 = strtotime($b['datetime']);
return $t1 - $t2;
}
$dt_array=[
[
'text' => 'hey',
'datetime' => '2010-05-15 11:21:35'
],[
'text' => 'hoy',
'datetime' => '2010-05-26 16:19:05'
],[
'text' => 'hay',
'datetime' => '2010-05-26 11:39:45'
]
];
usort($dt_array, 'date_sort');
10 Siklus bertumbuh
===================
1. Teori => Konsep
2. Konsep => Actiona Plan
3. Action Plan => Action
4. Action => Result
5. Result => Feedback
6. Feedback => Bug Fix
7. Bug Fix => Experience
8. Experience => Intuisi
9. Intuisi => Keputusan Yang Lebih
Cepat dan Akurat
10.Kumpulan Keputusan Cepat
& Akurat => New Better Concept
history.pushState({}, null, '#A/woo-wa.com');
//akan mereplace url browser
//jadi https://domain.com/#A/woo-wa.com
DROP TRIGGER IF EXISTS `trigger_email_to_trx`;
DELIMITER $$
CREATE TRIGGER `trigger_email_to_trx` AFTER UPDATE ON `wp_users` FOR EACH ROW
BEGIN
IF (OLD.user_email <> NEW.user_email) THEN
UPDATE wp_freemium SET email=NEW.user_email WHERE email=OLD.user_email;
UPDATE wp_trx_manager SET email=NEW.user_email WHERE email=OLD.user_email;
END IF;
END;$$
DELIMITER ;
$start = new DateTime('2021-05-01');
$end = new DateTime('2021-05-10');
$interval = DateInterval::createFromDateString('1 day');
$period = new DatePeriod($start, $interval, $end);
foreach ($period as $v) {
echo $v->format("l Y-m-d H:i:s\n");
}
const data = JSON.stringify({
nav: 'yuk_login',
email: document.getElementById('email').innerHTML,
});
fetch('route.php', {
method: 'POST',
headers: {
'Content-Type': 'application/json; charset=UTF-8',
},
body: data,
}).then(response => {
if (response.ok) {
response.text().then(response => {
// let res_arr=JSON.parse(response); // jika response JSON
document.querySelector('#result_area').innerHTML=response;
});
}
}).catch((error) => {
console.log('failed > ajax > yuk_login');
console.log(error)
});
//PHP capture data
$dt = json_decode(file_get_contents("php://input"), true);
session.lazy_write = 0
/*Ketika On, session data hanya
rewrite jika ada perubahan.*/
memcached.sess_locking = Off
/*ketika di On, session file
diLock read/write ketika script
dieksekusi. Lock akan released
ketika eksekusi selesai.*/
async function uploadFile() {
let formData = new FormData();
formData.append("file", fileupload.files[0]);
await fetch('route.php', {
method: "POST",
body: formData
});
alert('The file has been uploaded successfully.');
}
Baca Selengkapnya
cleanText = strInputCode.replace(/<\/?[^>]+(>|$)/g, "");
Puasa asyura jatuh pada tanggal 10 Muharram.
Tahun ini puasa asyura 1443 H jatuh pada 19 Agustus 2021.
function convertToSlug($string){
$slug = preg_replace('/[^A-Za-z0-9-]+/', '-', $string);
$slug = strtolower(trim($slug));
return $slug;
}
function convertToSlug(Text){
return Text
.toLowerCase()
.replace(/[^\w ]+/g,'')
.replace(/ +/g,'-')
;
}
//misal url nya
//https://usman.rubiantoro.com/?go=web-font-monaco
location.search.split('go=')[1]
//akan menghasilkan web-font-monaco
window.location.href.split('?')[1]
//akan menghasilkan go=web-font-monaco
".print_r($dt,1)."";